【问题标题】:Cannot compile Ionic Cordova (Update 6) app on Visual Studio 2015无法在 Visual Studio 2015 上编译 Ionic Cordova(更新 6)应用程序
【发布时间】:2016-02-14 15:05:41
【问题描述】:

最近我更新到 Visual Studio 的 Cordova Tools 版本 6,我现在收到此错误。每当我尝试构建我的解决方案时。

: BLD00401 : Could not find module 'C:\Users\[User]\AppData\Roaming\npm\node_modules\vs-tac\app.js'. Please Go to Tools --> Options --> Tools for Apache Cordova --> Cordova Tools --> Clear Cordova Cache and try building again.  

我已尝试按照本指南重新安装 vs-tac 但没有骰子。 https://msdn.microsoft.com/library/dn771551%20(v=vs.140).aspx#vstac http://taco.visualstudio.com/en-us/docs/configure-vs-tools-apache-cordova/#vstac

提前感谢您的帮助

【问题讨论】:

  • 你并不孤单。这与 (1) 现有项目 (Ionic)、(2) 的错误相同,即使您创建了一个新项目 - 两者安装Update 6 后,空白或离子模板。编号:microsoft.github.io/vstacoblog/2016/02/04/…
  • 所以我认为我们只需要等待它解决呢? :(
  • 没有设法弄清楚任何事情 - 下面的答案对我不起作用(尝试了所有的),但这并不意味着它对你不起作用(似乎工作对于一些)。我在node v4.3.0npm v3.7.2
  • 顺便说一句,您是否还会收到 Microsoft.MDA.FileMirroring.targets 错误(我的第 279 行)“安装 npm 包时出错”
  • 是的,这就是问题所在。抱歉,添麻烦了。我们将在下一个版本中进行修复。

标签: cordova ionic-framework visual-studio-cordova


【解决方案1】:

这似乎是我们在更新 6 中引入的一个错误,如果您的 npm 安装目录(通常在您的 AppData 文件夹中)的路径中有空格,则会导致 npm 安装错误。简单的解决方法是更改​​您的 npm 安装目录:

npm 配置设置前缀“C:\Folder\With\No\Spaces”

然后在 VS 中再次构建。我们会尽快修复并在更新 7 中发布。

很抱歉给您带来不便。

【讨论】:

  • 手动安装包也可以:npm install -g "C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\ApacheCordovaTools\packages\vs-tac"
  • 非常感谢您的入住!我会尝试npm config set prefix 并报告(我现在没有使用受影响的盒子)。我确实按照下面@RicardoPontual 的建议尝试了手动安装,但它没有为我做任何事情。再次感谢!
  • 非常感谢!我在一个好地方(config set prefix 为我做了):)
  • 注意:更新 7 对此进行了修复并已发布。请参阅microsoft.github.io/vstacoblog/2016/03/01/… 了解更多信息。
  • 我正在使用 VS 2015 更新 3 和 TACO 更新 10 是否会出现其他问题?
【解决方案2】:

更新:以下可能的解决方法非常感谢 MS 团队> see answer for fix until Update 7

Update 7 is/has been released and resolves this issue (spaces in path)


不是一个答案 - 更像是一个尝试获得答案的“清单”。


环境:

  • Visual Studio 2015(所有更新)
  • 节点 v4.3.0
  • Npm v3.7.2

错误

在任何 Cordova 项目中 - 现有的、新的(空白模板、离子模板)等。

BLD401  Error : 
BLD00401 : Could not find module 'C:\Users\Ed Chavez\AppData\Roaming\npm\node_modules\vs-tac\app.js'. 
Please Go to Tools --> Options --> Tools for Apache Cordova --> Cordova Tools --> Clear Cordova Cache and try building again.

尝试

  • 按照说明清除 Cordova 缓存并重建并不能解决任何问题
  • vs-tac(从原始Program Files)复制到错误中的文件夹,并不能解决问题。每次构建项目时,复制的文件夹都会清除/删除
  • 听从reinstall vs-tac 的建议并不能解决问题
  • 尝试运行修复 Cordova 工具(我的实验)无法解决问题

可能的罪魁祸首这是罪魁祸首:space 在路径中

检查Output window 指出可能是什么问题(详情如下):

  • 在安装vs-tac 的位置:

'C:\Users\Ed' is not recognized as an internal or external command, (TaskId:10)

这是(我的)Users 文件夹,它在我的名字和姓氏之间包含一个space

Your environment has been set up for using Node.js 4.3.0 (x64) and npm. (TaskId:10)
------ Ensuring correct global installation of package from source package directory: C:\PROGRAM FILES (X86)\MICROSOFT VISUAL STUDIO 14.0\COMMON7\IDE\EXTENSIONS\APACHECORDOVATOOLS\packages\vs-tac (TaskId:10)
------ Name from source package.json: vs-tac (TaskId:10)
------ Version from source package.json: 1.0.34 (TaskId:10)
------ Package not currently installed globally. (TaskId:10)
------ Installing globally from source package. This could take a few minutes... (TaskId:10)
Each package is licensed to you by its owner. Microsoft is not responsible for, nor does it grant any licenses to, third-party packages. Some packages may include dependencies which are governed by additional licenses. Follow the package source (feed) URL to determine any dependencies. (TaskId:10)
'C:\Users\Ed' is not recognized as an internal or external command, (TaskId:10)
operable program or batch file. (TaskId:10)
------ npm install failed. Exit code: 1 (TaskId:10)
------ Package installation failed. Retrying... (TaskId:10)

所以现在正在寻找一些修复(可能必须来自 Microsoft)...将根据需要进行更新


更新:这是一种解决方法,而不是修复 See above

经过更多修改后,问题在于您的 Windows 用户名 中的 space。因此,如果您的用户文件夹看起来像这样c\users\firstName lastName\,您将受到此错误的影响。

  • 我在 Windows 10 中创建了一个新的(本地)用户
  • 用户名没有空格edsf
  • 创建了一个新的空白项目(与模板相比)
  • 构建顺利

这里是vs-tac成功安装的部分,现在用户名没有空格(edsf

Your environment has been set up for using Node.js 4.3.0 (x64) and npm.
---skipped for brevity ---

edge-cs@0.3.0 install C:\Users\edsf\AppData\Roaming\npm\node_modules\vs-tac\node_modules\edge\node_modules\edge-cs
...
Success: platform check for edge.js: node.js x64 v4.3.0
C:\Users\edsf\AppData\Roaming\npm\vs-tac-cli -> C:\Users\edsf\AppData\Roaming\npm\node_modules\vs-tac\vs-tac-cli.cmd

【讨论】:

  • 太棒了。如果您在安装软件包或运行模拟器时遇到任何问题,请告诉我。我在互联网访问/代理方面遇到了一些问题,我有一些关于如何解决它的说明。
  • @RicardoPontual 非常感谢您的所有时间和帮助!上面来自 MS 的答案/临时修复对我有用(将前缀设置为无空格的文件夹)
【解决方案3】:

我也有同样的问题。 在我的电脑中,我会从另一个文件夹中复制 app.js:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\ApacheCordovaTools\Packages\vs-tac

我知道这不是一个好的解决方案,但对我有用。

但是在这里的另一台计算机上,我使用此命令重新安装并工作(我在运行此命令之前关闭了 VS,并开始了一个新项目):

npm install -g "C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\ApacheCordovaTools\packages\vs-tac"

希望这些笔记能帮到你。

【讨论】:

  • 您的第一个选项(复制)也在另一篇 SO 帖子中提到,但不清楚您复制到的位置 - 我尝试将其复制到错误消息所在的文件夹指向 (AppData\Roaming\npm\node_modules) 但这并没有做任何事情。在build 之后,该文件夹被清除(有点道理,所以还有其他东西可以按照它所说的进行 - 基于某些设置构建) - 这是我找不到的“某事”/“某处”/现在想办法……
  • 我已复制到发生错误的 vs-tac 文件夹:C:\Users[user]\AppData\Roaming\npm\node_modules\vs-tac
  • 谢谢 - 它会在您rebuild 任何 Cordova 应用程序之后 留在那里吗?
  • @EdSF 是的,确实如此。当我尝试构建时,缺少一些其他文件(如 plugman 和 optimist),但我可以运行 npm install -g [name] 安装这些文件。经过一些尝试,我能够构建和应用程序。
  • 知道了 - 感谢您抽出宝贵时间!它根本不适合我。我所做的任何重建都会删除该(复制的 vs-tac)文件夹,并且错误不会消失。另一个错误指向 Microsoft.MDA.FileMirroring.targets 中的一些神秘的 line 279(安装本地 npm 包时出错)
猜你喜欢
  • 2016-05-28
  • 1970-01-01
  • 1970-01-01
  • 2017-01-02
  • 1970-01-01
  • 2019-11-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多