cordova windows 构建错误(未检测到所选目标的有效 MSBuild) - 检查所有 Cordova 要求
Posted
技术标签:
【中文标题】cordova windows 构建错误(未检测到所选目标的有效 MSBuild) - 检查所有 Cordova 要求【英文标题】:cordova windows build error (No valid MSBuild was detected for the selected target) - All Cordova requirements are checked 【发布时间】:2019-04-26 07:10:57 【问题描述】:我正在尝试使用cordova 构建Windows x64,但仍然没有成功。我收到此错误,并且在论坛中找不到任何可以帮助我的内容,因为我的案例中检查了所有 Cordova 要求。
未检测到所选目标的有效 MSBuild:AppPackages 文件夹不存在
我在 MSBUILDDIR 环境中尝试了不同的地址,目前没有成功。 Cordova 要求也通过了一切!
科尔多瓦要求
ENV var MSBUILDDIR is set C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin\amd64
Requirements check results for windows:
Windows OS: installed Windows 10
MSBuild Tools: installed 15.9
Visual Studio: installed (user-specified via VSINSTALLDIR)
Windows SDK: installed 10.0
Windows Phone SDK: installed 10.0
我的电脑是一台 x64 机器,运行 64 位 Windows 10,配备 AMD Ryzen 5 2400G APU 任何想法都非常感谢
顺便说一下,到目前为止,我已经解决了几个问题,所以我离开这里以防以后对某些人有所帮助:
错误:不支持 MSBuild v4.0,正在中止。
修复:通过设置环境变量 VSINSTALLDIR = C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\
即使 Visual Studio 2017 安装了 Cordova 库,仍然出现以下错误:
错误:未找到 Windows SDK。修复:通过单独安装 SDK (https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk)
错误:我收到一些指向 Node.js 的错误修复:全部安装 VS 中的 Node.JS 库,并将 Cordova 更新到最新版本, 其中一个应该已经修复了它,因为在我做了这些之后它就消失了
【问题讨论】:
【参考方案1】:就个人而言,我更喜欢命令行工具。我遇到了同样的问题,并通过分析这些工具的输出设法解决了它。
不支持 MSBuild v4.0,正在中止。
如果您使用cordova build windows --verbose
,您会看到更多信息。
然后,您必须指定另一个 MSBuild 目标。 Cordova 在注册表中查找这些目标,但 Visual Studio(至少 2017 年)根本不接触注册表。
所以,我在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\15.5\
(新创建的)下添加了指向C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\15.0\Bin
的密钥MSBuildToolsPath
。
完成此操作后,您不需要指定环境变量MSBUILDDIR
和VSINSTALLDIR
。但是我也手动全局安装了这些工具(例如npm install -g cordova
),所以使用VS提供的工具可能需要使用那些环境变量。
就我而言,之后构建工作正常。但是请注意,我安装了 VS Community 2017 和 VS BuildTools。我用这篇文章作为“模板”:Cordova build windows on Windows 10 and VisualStudio 2017
【讨论】:
以上是关于cordova windows 构建错误(未检测到所选目标的有效 MSBuild) - 检查所有 Cordova 要求的主要内容,如果未能解决你的问题,请参考以下文章
Cordova 构建 android 失败!!! JDK 8('1.8.*')的要求检查失败!检测到的版本:9.0.1 在 Windows 10 中
Cordova 构建错误“JDK 8 ('1.8.*') 的要求检查失败!检测到的版本:11.0.2”
Cordova Windows 应用程序未使用依赖项文件夹构建 appx