使用 Cordova 构建 Windows 10 个应用程序:将 UseDotNetNativeToolchain 设置为 false
Building Windows 10 App using Cordova: Set UseDotNetNativeToolchain to false
我正在尝试按照本教程使用 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.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>
但是,错误仍然不会消失。我做错了什么?
您不能使用 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 构建任务的完整参数列表。
希望对您有所帮助!
我正在尝试按照本教程使用 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.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>
但是,错误仍然不会消失。我做错了什么?
您不能使用 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 构建任务的完整参数列表。
希望对您有所帮助!