cordova Windows构建错误(未为所选目标检测到有效的MSBuild)-检查所有Cordova要求

时间:2018-11-23 17:08:57

标签: cordova msbuild

我试图从cordova中获得Windows x64的构建,但仍然没有成功。我收到此错误,并且在论坛上找不到任何可以帮助我的信息,因为我检查了所有的Cordova要求。

  

未为所选目标检测到有效的MSBuild:AppPackages   文件夹不存在

我在MSBUILDDIR环境中尝试了不同的地址,到目前为止没有成功。科尔多瓦的要求也通过了一切!

科尔多瓦要求

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

我的计算机是64位Windows 10上的x64计算机,带有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 个答案:

答案 0 :(得分:2)

我个人更喜欢命令行工具。我遇到了同样的问题,并通过分析这些工具的输出设法解决了这个问题。

  

不支持MSBuild v4.0,正在中止。

如果您使用cordova build windows --verbose,则会看到更多信息。

然后,您必须指定另一个MSBuild目标。科尔多瓦在注册表中寻找这些目标,但Visual Studio(至少2017年)根本没有涉及注册表。

因此,我在新创建的MSBuildToolsPath下添加了指向HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\15.5\的密钥C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\15.0\Bin

这样做之后,您不需要来指定环境变量MSBUILDDIRVSINSTALLDIR。但是我还手动全局安装了这些工具(例如npm install -g cordova),因此使用VS提供的工具可能需要使用那些env变量。

就我而言,此后构建工作正常。但是请注意,我安装了VS Community 2017 VS BuildTools。我将此帖子用作“模板”:Cordova build windows on Windows 10 and VisualStudio 2017