我试图从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更新到了最新版本, 其中一个应该修复它,因为它在我做完之后就消失了
答案 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
。
这样做之后,您不需要来指定环境变量MSBUILDDIR
和VSINSTALLDIR
。但是我还手动全局安装了这些工具(例如npm install -g cordova
),因此使用VS提供的工具可能需要使用那些env变量。
就我而言,此后构建工作正常。但是请注意,我安装了VS Community 2017 和 VS BuildTools。我将此帖子用作“模板”:Cordova build windows on Windows 10 and VisualStudio 2017