Visual Studio 2017外部工具npm不工作

时间:2017-03-12 14:49:52

标签: npm visual-studio-2017

我有一个需要npm 3+的打字稿项目。我已将它安装到C:\ Program Files \ nodesjs,并将我的系统环境变量设置为指向那里。

在Visual Studio 2017中,当我设置外部工具位置时,它仍然没有拿到npm版本3+。

External Tools Window

NPM version

6 个答案:

答案 0 :(得分:3)

对于您的节点安装文件夹,我假设您的意思是:

C:\ Program Files \ nodejs不是 C:\ Program Files \ nodesjs

此外,您还可以从程序包管理器控制台测试npm版本。我不确定是否尊重您的外部工具配置(而是Powershell Profile),因此结果可能不会改变。

相反,在项目打开的情况下,您应该能够右键单击解决方案资源管理器依赖关系下的 npm 节点,然后选择还原包。在 输出 窗口(Bower / npm)中,您应该看到正在从机器范围的节点安装中执行npm install命令:

  

" C:\ Program Files \ nodejs \ npm.CMD"安装

答案 1 :(得分:3)

向外部工具添加额外路径的方式似乎是正确的。 你确定你有正确的版本吗? (在我的安装中,内置的nodejs版本是5.4.1和npm verison 3.3.4)

可以肯定的是,对我来说,找出Visual Studio 2017正在使用的npm安装的最佳方法是(取自How to get the npm global path prefix):

PM> npm config get prefix

如果所有其他方法都失败了,您也可以随时更新内置的npm。 只需导航到您的Web外部路径(可能是C:\ Program Files(x86)\ Microsoft Visual Studio \ 2017 \ Professional \ Web \ External)和:

pm> npm install npm@latest

答案 2 :(得分:0)

仅在构建时使用外部Web工具配置。 PATH变量是通过$(ExternalToolsPath)参数由构建任务之一(重新)设置的,该任务是:外部Web工具列表的分号连接值。

由于在PowerShell控制台窗口中运行命令,因此未使用外部Web工具配置。

我最好的假设是,您的PATH环境变量中有多个包含npm可执行文件的目录。最新目录将始终获胜。在这种情况下,请删除重复的目录,或确保最后添加您最新版本的npm的目录。您可以从系统属性或PowerShell控制台窗口使用的Nuget profile中执行此操作。

要在PowerShell中检查PATH变量,请使用: Write-Host $ENV:Path

要列出PowerShell中npm可执行文件的可能位置,请使用: cmd /c where npm

答案 3 :(得分:0)

当尝试将Task Runner Explorer与webpack一起使用时,我遇到了类似的问题。我的问题是我的webpack.config.js文件不在我项目的根目录中(它在我的脚本文件夹中)。将其移到根目录对我来说是成功的秘诀。

答案 4 :(得分:0)

这是从dotnet新的角度模板项目中删除“ dist”文件夹后发生的。 (npm已安装并在路径中)

从Visual Studio 2017内部重新创建“ dist”文件夹(在ClientApp下)为我解决了这个问题。

答案 5 :(得分:0)

右键单击“我的电脑” 然后单击属性,然后单击高级系统设置 环境变量->系统变量->选择路径,然后单击编辑按钮 添加%AppData%\ npm     %ProgramFiles%nodejs \     C:\ Program Files \ nodejs

然后单击确定->确定->确定->确定

enter image description here

完成此过程。关闭并再次打开Visual Studio 并执行命令“ nmp start” 在Visual Studio终端中。