配置 Visual Studio 的 Task Runner Explorer 使用哪个 NPM?
Configure which NPM is used by Visual Studio's Task Runner Explorer?
在通常的 Windows 命令行中,我看到:
C:\Users\me\myProject\UI> node --version
v8.12.0
C:\Users\me\myProject\UI> npm --version
6.11.3
C:\Users\me\myProject\UI> where node
C:\Program Files\nodejs\node.exe
C:\Users\me\myProject\UI> where npm
C:\Program Files\nodejs\npm
C:\Program Files\nodejs\npm.cmd
C:\Users\me\AppData\Roaming\npm\npm
C:\Users\me\AppData\Roaming\npm\npm.cmd
现在我正在使用 Visual Studio Professional 2017:如果我通过 Tools > NuGet Packet Manager > Package Manager console 打开一个 (Powershell) 终端,我明白了我喜欢的全局安装:
PM> pwd
Path
----
C:\myProject
PM> Get-Command npm
CommandType Name Version Source
----------- ---- ------- ------
Application npm.cmd 0.0.0.0 C:\Program Files\nodejs\npm.cmd
PM> node --version
v8.12.0
PM> npm --version
6.11.3
PM> Get-Command node
CommandType Name Version Source
----------- ---- ------- ------
Application node.exe 8.12.0.0 C:\Program Files\nodejs\node.exe
但是,如果我在 Task Runner Explorer 中选择 Defaults > version
,我会看到以下输出:
C:\me\myProject> cmd.exe /c npm run version --color=always
> myProject.ui@1.3.7 version C:\me\myProject
> node --version
v10.6.0
这不是我想要的版本,也不是我在命令window中看到的以where npm
开头的任何安装!
唯一可能的方法是在某处选择另一个安装,因为 Task Runner Explorer 中的 PATH 设置。这是一个正确的结论吗? 我还希望 Task Runner Explorer 使用全局安装,但我该怎么做?
正如我的同事刚刚告诉我的那样,https://github.com/madskristensen/NpmTaskRunner/issues/66 中描述了这个问题。解决方案很简单,但前提是您知道去哪里找。
- 转到工具 > 选项 > 项目和解决方案 > Web 包管理 > 外部 Web 工具
- 在出现的弹出窗口 window 中,使用箭头按钮将条目
$(PATH)
移动到第二个位置(它可能在列表中更靠后的位置)
在通常的 Windows 命令行中,我看到:
C:\Users\me\myProject\UI> node --version
v8.12.0
C:\Users\me\myProject\UI> npm --version
6.11.3
C:\Users\me\myProject\UI> where node
C:\Program Files\nodejs\node.exe
C:\Users\me\myProject\UI> where npm
C:\Program Files\nodejs\npm
C:\Program Files\nodejs\npm.cmd
C:\Users\me\AppData\Roaming\npm\npm
C:\Users\me\AppData\Roaming\npm\npm.cmd
现在我正在使用 Visual Studio Professional 2017:如果我通过 Tools > NuGet Packet Manager > Package Manager console 打开一个 (Powershell) 终端,我明白了我喜欢的全局安装:
PM> pwd
Path
----
C:\myProject
PM> Get-Command npm
CommandType Name Version Source
----------- ---- ------- ------
Application npm.cmd 0.0.0.0 C:\Program Files\nodejs\npm.cmd
PM> node --version
v8.12.0
PM> npm --version
6.11.3
PM> Get-Command node
CommandType Name Version Source
----------- ---- ------- ------
Application node.exe 8.12.0.0 C:\Program Files\nodejs\node.exe
但是,如果我在 Task Runner Explorer 中选择 Defaults > version
,我会看到以下输出:
C:\me\myProject> cmd.exe /c npm run version --color=always
> myProject.ui@1.3.7 version C:\me\myProject
> node --version
v10.6.0
这不是我想要的版本,也不是我在命令window中看到的以where npm
开头的任何安装!
唯一可能的方法是在某处选择另一个安装,因为 Task Runner Explorer 中的 PATH 设置。这是一个正确的结论吗? 我还希望 Task Runner Explorer 使用全局安装,但我该怎么做?
正如我的同事刚刚告诉我的那样,https://github.com/madskristensen/NpmTaskRunner/issues/66 中描述了这个问题。解决方案很简单,但前提是您知道去哪里找。
- 转到工具 > 选项 > 项目和解决方案 > Web 包管理 > 外部 Web 工具
- 在出现的弹出窗口 window 中,使用箭头按钮将条目
$(PATH)
移动到第二个位置(它可能在列表中更靠后的位置)