1

我正在尝试按照本教程使用 Visual Studio 2015 构建 Cordova 应用程序:http: //taco.visualstudio.com/m/docs/tutorial-gulp-readme/

我将 config.xml 中的 Windows 目标版本设置为 10.0。当我运行 gulp 时,构建任务停止并出现以下错误:

C:\Program Files (x86)\MSBuild\Microsoft\.NetNative\Microsoft.NetNative.targets(247,5): error : .NET Native requires an architecture specific Target Platform. Using the 'AnyCPU' Target Platform with .NET Native is not supported. Please ensure the 'UseDotNetNativeToolchain' property is set to false for 'AnyCPU' builds. [E:\App-Path\App-Path\platforms\windows\CordovaApp.Windows10.jsproj]
ERROR: Error code 1 for command: C:\Program Files (x86)\MSBuild\14.0\bin\msbuild with args: E:\App-Path\App-Path\platforms\windows\CordovaApp.Windows10.jsproj,/clp:NoSummary;NoItemAndPropertyList;Verbosity=minimal,/nologo,/p:Configuration=release,/p:Platform=anycpu
Process terminated with code 1.

随后,我编辑了 E:\App-Path\App-Path\platforms\windows\CordovaApp.Windows10.jsproj 使其现在显示

<ProjectConfiguration Include="Release|AnyCPU">
    <Configuration>Release</Configuration>
    <Platform>AnyCPU</Platform>
    <UseDotNetNativeToolchain>false</UseDotNetNativeToolchain>
</ProjectConfiguration>

但是,错误仍然不会消失。我究竟做错了什么?

4

1 回答 1

2

您无法使用 AnyCPU 作为架构为 Windows 10 构建,您必须以 x86 或 x64 为目标。

要解决此问题,请将您的 gulp 任务更改为构建 x86 而不是 AnyCPU。以下是我修改 gulp 目标以使用 Windows 10 的方法:

gulp.task("default", function (callback) {
    cordova.build({
        "platforms": ["windows"],
        "options": ["--release", "--archs=x86"]
    }, callback);
});

如果您查看 \platforms\windows\cordova\lib\build.js,您将看到可以传递给 Windows 构建任务的完整参数列表。

希望有帮助!

于 2015-12-01T17:40:05.190 回答