Cordova平台添加wp7失败 - msbuild错误

时间:2013-11-06 12:27:37

标签: node.js windows-phone-7 cordova msbuild

我想创建由Cordova 3.1.0支持的跨平台应用程序,我通过Node.js安装了该应用程序。 我已经安装了Visual Studio 2012和Windows Phone SDK 8 +更新。我还添加了

环境变量中的My Path显示:

C:\Python33\;C:\Program Files\PHP\v5.3;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\;C:\Program Files (x86)\Windows Kits\8.0\Windows Performance Toolkit\;C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\;C:\Program Files\Microsoft SQL Server\110\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\;C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn\;C:\Program Files\Microsoft\Web Platform Installer\;C:\Users\Filip\AppData\Local\Temp;C:\Python27;C:\Users\Filip\AppData\Roaming\npm;E:\dev\adt-bundle\sdk\platform-tools;E:\dev\adt-bundle\sdk\tools;E:\dev\WinAnt\bin;C:\Windows\Microsoft.NET\Framework\v4.0.30319

我通过命令创建了应用程序:

cordova create d4m com.example.d4m Drupal4me

我添加了Android平台:

cordova platform add android

我可以构建一些Android应用。 但Windows Phone 7 / WP 8存在一些问题...... 我在尝试:

cordova platform add wp7

并收到错误:

Checking wp7 requirements...
[Error: Error while checking requirements: Please install the .NET Framwork v4.0
.30319 (in the latest windows phone SDK's).
Make sure the "msbuild" command in your path is pointing to  v4.0.30319 of msbui
ld as well (inside C:\Windows\Microsoft.NET\Framework\v4.0.30319).
]

我在Windows 8.1工作并安装了最新的.net Framework。 我该怎么办?

4 个答案:

答案 0 :(得分:4)

我有同样的问题,当我在构建时运行详细(“phonegap -V local build wp7”)时,我发现错误来自此文件:

  

[phonegap]正在运行“”C:\ Users \ Tom.cordova \ lib \ wp \ cordova \ 3.1.0 \ wp7 \ bin \ check_reqs“”(输出到后续)

具体在78.line

  

var msversion = output.match(/。NET \ sFramework \,\ sversion \ s4.0 /);

寻找英文'version',但msbuild在本地化字符串中返回版本(在本例中为捷克语“verze”版本)

  

[Microsoft .NET Framework,verze 4.0.30319.34003]

所以解决方案是改变变更注册。 EXPR。接受字符“,”和“4”之间的任何单词(\ w *):

  

var msversion = output.match(/。NET \ sFramework \,\ s \ w * \ s4.0 /);

之后,phonegap成功构建项目。

答案 1 :(得分:3)

我同意Witriol

与PhoneGap 3.3.0和wp8有同样的问题, 我所要做的只是注释掉这个文件中的版本检查: C:\ Users \用户Lander.cordova \ lib中\ WP \科尔多瓦\ 3.3.0 \ WP8 \ BIN \ check_reqs.js

这是麻烦制造者:

var msversion = output.match(/Microsoft\s\(R\)\s+Build\sEngine\s[a-z]+\s4\.0\.30319/i);

这个也适用于非英语环境:

var msversion = output.match(/.NET\sFramework\,\s\w*\s4.0.30319/i);

答案 2 :(得分:2)

只需在系统变量“PATH”中设置环境变量C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \;

发生了事情,确实找不到msbuild。

之后重新启动cmd并输入“msbuild -version”你会看到版本。

答案 3 :(得分:0)

与西班牙语相同,因为Versión而不是版本

需要修改

C:\Users\Roberto\.cordova\lib\wp\cordova\3.3.0\wp8\bin\check_reqs.js

更改第84行

83    var msversion = output.match(/Microsoft\s\(R\)\s+Build\sEngine\s[a-z]+\s4\.0\.30319/i);
84    if (!msversion) {

84    if (false) {

并且工作