Node.js 使用批处理安装和配置量角器

Node.js 使用批处理安装和配置量角器,node.js,batch-file,npm,protractor,Node.js,Batch File,Npm,Protractor,我正在尝试使用批处理脚本配置量角器框架。我编写了用于下载和安装Node.js的批处理脚本,并将其命名为“prereq.bat” 我的第二个批处理文件“config.bat”是我放置所有npm命令以配置量角器和其他所需库的地方 npm install -g protractor && npm install protractor-beautiful-reporter && npm install js-yaml && webdriver-manage

我正在尝试使用批处理脚本配置量角器框架。我编写了用于下载和安装Node.js的批处理脚本,并将其命名为“prereq.bat”

我的第二个批处理文件“config.bat”是我放置所有npm命令以配置量角器和其他所需库的地方

npm install -g protractor && npm install protractor-beautiful-reporter && npm install js-yaml && webdriver-manager update
我创建了一个带有“设置”按钮的简单JavaGUI工具。单击时,使用两个单独的“Runtime.getRuntime().exec()”调用这两个批处理文件

在JAVA代码中,bat文件使用以下命令执行:

"cmd /c start "prereq.bat";
"cmd /c start "config.bat";
问题:

当我从EclipseIDE执行完整的解决方案时,一切正常。安装节点,然后配置量角器, 但是,当我将项目导出为runnable jar并尝试执行时,节点安装成功,但当调用第二批“config.bat”时,我得到了“npm不可识别”错误

我尝试过的解决方案: 在代码中,我使用了Process.waitFor()方法,以便只有在第一批命令成功运行时才调用第二批。不过,还是会出现同样的错误


谢谢你的帮助

尝试将nodejs安装目录添加到
PATH
环境变量的
config.bat
开头。因此cmd.exe可以通过
PATH
环境变量找到
npm
二进制文件

// config.bat

set PATH=<Nodejs installation directory>;%PATH%
npm install -g protractor && npm install protractor-beautiful-reporter && npm install js-yaml && webdriver-manager update
//config.bat
设置路径=;%路径%
npm安装-g量角器和npm安装量角器美丽的记者和npm安装js yaml和webdriver管理器更新

可能是因为通常您的环境变量需要重新加载到cmd中,通常我们会退出cmd,然后打开一个新实例,但您可以尝试在安装npm后将
start
该部分代码加载到一个新安装中,该安装应包含新的环境变量。否则,从完整的npm安装路径调用它。
// config.bat

set PATH=<Nodejs installation directory>;%PATH%
npm install -g protractor && npm install protractor-beautiful-reporter && npm install js-yaml && webdriver-manager update