【问题标题】:Cordova build for Windows with Visual Studio 2017 error带有 Visual Studio 2017 错误的 Windows 的 Cordova 构建
【发布时间】:2017-10-27 05:35:36
【问题描述】:

我在为 Windows 构建新的 cordova 项目时遇到问题。

我安装了以下版本:

  • cordova@7.0.0,不过也可以用cordova@6.5复现
  • Visual Studio 2017 Enterprise,包含适用于 Apache Cordova、Windows Mobile 模拟器等的工具。
  • 已安装 MS Build Tools v14 和 v15。

所以,要重现:

  1. cordova create project1
  2. cd project1
  3. cordova platform add windows
  4. cordova build windows

然后出现如下错误:error MSB4019: The imported project "C:\Program Files (86)\MSBuild\Microsoft\VisualStudio\v14.0\JavaScript\Micros oft.VisualStudio.WJProject.Default.props" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk

当我将 --verbose 标志添加到构建时,我注意到 C:\WINDOWS\system32\reg.exe query,HKLM\SOFTWARE\Microsoft\MSBuild\ToolsVersions\15.0,/v,MSBuildToolsPath 命令没有返回成功,因此它使用构建工具 v14 而不是 v15。

如果我使用 Visual Studio 2017 创建一个新项目,它会在 Visual Studio 中成功编译和运行,但在 cordova build windows 命令上出现相同的错误。

我想这是安装了正确的注册表项,它会正常工作。我应该如何正确添加它们?或者 Visual Studio 正在做什么而不是使用 cordova 或 taco 命令完成?

【问题讨论】:

    标签: cordova msbuild visual-studio-cordova


    【解决方案1】:

    今天遇到了同样的问题,您指出了正确的方向 - 谢谢!

    造成这种情况的原因是,cordova build 命令在注册表中查找 MSBuild 路径,但由于 Visual Studio 2017,Microsoft 不再在注册表中写入路径(更多关于此here)

    作为解决方法,我在注册表中创建了以下键(不要忘记更改路径):

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\15.0]
    "MSBuildToolsPath"="C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\MSBuild\\15.0\\Bin\\amd64"
    

    之后,cordova 构建工作!

    另一种解决方案是安装 VS 2015,但在我的情况下,这不是一个选项,因为我在我的应用程序中使用 sqlite 插件,当前版本只能使用 VS 2017 for windows 构建。

    【讨论】:

      猜你喜欢
      • 2018-06-03
      • 2015-11-14
      • 1970-01-01
      • 2018-08-14
      • 2019-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-02
      相关资源
      最近更新 更多