首页 文章

添加MobileFirst插件时,为Windows10构建ionic2应用程序失败

提问于
浏览
3

问题:

  • 我在ionic2中有一个应用程序,我可以为windows 10构建,直到我添加了cordova-plugin-mbf(MBF版本8.0.0) .

  • 当我添加它时,构建失败并要求我添加参数--archs = x64

  • 有了它,构建继续失败但是出现此错误"msbuild.exe: Command failed with exit code 1"

我尝试的是什么:

  • 启动一个新项目来验证我可以在没有插件的情况下构建

  • 将插件添加到空项目中以验证是谁抛出错误

  • 从头开始重新安装Windows以确保我的设置正确

  • 使用节点v5.12构建

  • 哭了很多

我的设置:

  • Cordova CLI:6.3.1

  • Ionic Framework版本:2.0.0-beta.11

  • Ionic CLI版本:2.0.0-beta.37

  • Ionic App Lib版本:2.0.0-beta.20

  • OS:节点版本:v6.5.0

  • Windows 10版本1511; 10586.545

  • Visual Studio 2015社区版:

  • microsoft web开发工具

  • 通用Windows应用开发工具

  • tools(1.4.1)和windows 10 SDK(10.0.14393)

  • windows 10 SDK(10.0.10586)

  • windows 10 SDK(10.0.10240)

  • windows 8.1和windows phone 8.0 / 8.1工具

  • 工具和Windows SDK

适用于Windows Phone 8.1的

  • 模拟器

完整程序:

开始一个干净的项目:

ionic start testBuildWin10 -v2
cd testBuildWin10

将config.xml设置为目标windows10而不是Windows 8.1

<platform name="windows">
    <preference name="windows-target-version" value="10.0" />
</platform>

在此步骤中,应用程序可以正常工作,但在添加mfp时失败:

cordova plugin add cordova-plugin-mfp
cordova prepare
ionic run windows

错误要求我添加参数--archs = x64

运行命令:“C:\ Program Files \ nodejs \ node.exe”C:\ Users \ Eric \ Desktop \ testBuildWin10-2 \ hooks \ after_prepare \ 010_add_platform_class.js C:\ Users \ Eric \ Desktop \ testBuildWin10-2 add到body类:platform-windows构建项目:C:\ Users \ Eric \ Desktop \ testBuildWin10-2 \ platforms \ windows \ CordovaApp.Windows10.jsproj配置:debug
平台:anycpu
C:\ Users \ Eric \ Desktop \ testBuildWin10-2 \ platforms \ windows \ CordovaApp.Windows10.jsproj(83,9):错误:以下组件需要.NET Native编译,当定位'Windows10'和'AnyCPU时不可用” . 考虑将目标处理器体系结构更改为以下之一:'x86,x64,ARM'(如果使用命令行,可以通过添加'--archs'参数来完成,例如:'cordova build windows --archs = 64' ) . C:\ Users \ Eric \ Desktop \ testBuildWin10-2 \ platforms \ windows \ plugins \ cordova-plugin-globalization \ GlobalizationProxy.winmd错误:C:\ Program Files(x86)\ MSBuild \ 14.0 \ bin \ msbuild.exe:Command退出代码1失败

然后当我运行离子运行--archs = x64

C:\ Users \ Eric \ Desktop \ testBuildWin10-2 \ platforms \ windows \ CordovaApp.Windows10.jsproj(83,9):错误:以下组件需要.NET Native编译,在定位'Windows10'和'时不可用AnyCPU” . 请考虑将目标处理器体系结构更改为以下之一:'x86,x64,ARM'(如果使用命令行,可以通过添加'--archs'参数来完成,例如:'cordova build windows --archs = 64' ) . C:\ Users \ Eric \ Desktop \ testBuildWin10-2 \ platforms \ windows \ plugins \ cordova-plugin-globalization \ GlobalizationProxy.winmd错误:C:\ Program Files(x86)\ MSBuild \ 14.0 \ bin \ msbuild.exe:Command退出代码1失败

1 回答

  • 3

    Mobilefirst Windows SDK包含体系结构特定的DLL . 因此, ionic run windows 命令将因为运行 AnyCPU 而失败 .

    要运行特定于平台的命令,您需要在 --archs=x64 之前添加 -- 分隔符 .

    尝试使用命令 ionic run windows -- --archs=x64 ,我希望它应该解决问题 .

相关问题