在您的系统上安装Harvest SCM时会发生这种情况。它有一个名称node.exe
为 at的可执行文件<Program Files (x86)>\CA\SharedComponents\PEC\bin
(<Program Files (x86)>
您的 x86 程序文件文件夹在哪里)。此路径存在于您的PATH
变量中,位于 Node.js 的node.exe
.
更新:您不需要旧答案中列出的详细方案。您只需打开命令提示符并运行:
C:\> nodevars
nodevars.bat
是一个小脚本,它与下面描述的基本相同(但以更安全的方式)。如果您安装了节点,则此脚本应位于路径中。(如果不确定添加C:\Program Files\nodejs
到您的路径中。但请确保将其附加到最后,这样 Harvest SCM 就不会中断)。
以下所有内容都已过时,但我会将其留给好奇的读者。
您可以执行以下两项操作中的任何一项来克服此问题:
<Program Files (x86)>\CA\SharedComponents\PEC\bin
从PATH
环境变量中删除。
- 添加/移动
<Program Files (x86)>\nodejs
到PATH
环境变量的开头(这是当前接受的来自djrpascu的答案)。
你可以做得更好!
上述方法存在两个问题:
- 您破坏了 Harvest SCM 的功能。
- 如果您没有提升的更改权限
PATH
,那么您将别无选择。(感谢@Glats)
所以我创建了这个小批处理文件,并将它放在我有几个其他个人脚本的目录中(这个目录在我的PATH
. 这是脚本的要点。
nodecmd.bat
@echo off
set path=%path:C:\Program Files (x86)\CA\SharedComponents\PEC\bin;=%;C:\Program Files (x86)\nodejs;
start %ComSpec%
然后下次你想运行 Node.js,而不是命令提示符,你用"Run..." 命令打开新脚本。
Windows+R
nodecmd
将出现一个命令提示符。您可以使用此命令提示符轻松运行node
。
解释
PATH
此位从变量中删除 Harvest 的可执行文件路径:
%path:C:\Program Files (x86)\CA\SharedComponents\PEC\bin;=%;
这添加了 Node.js 的路径:
set path=...;C:\Program Files (x86)\nodejs;
结果是一个字符串,其中包含原始 PATH 变量减去Harvest 的路径,再加上Node 的路径。并且在当前批处理文件的范围内设置为PATH变量。
注意:您可能必须更改脚本中的路径以适应系统中的软件安装文件夹)。
下一行,start %ComSpec%
启动命令提示符。此时,PATH 变量已被修改。使用修改后的环境变量,您可以在这个新的命令提示符中运行 node。环境变量修改不影响系统其余部分,保证Harvest SCM软件运行不中断。