Jenkins上的npm / nodejs

我试图让npm / nodejs在Jenkins(v2.32.3)上工作,但在将Nodejs插件从版本0.2.2升级到1.1.2之后出现问题。

我已经手动下载了Nodejs,并将其解压到/etc/nodejs/node-v6.9.4-linux-x64 ,并在Global Tool Configuration(全局工具configuration)中进行了configuration。

我有一个简单的工作(Execute shell):

 echo $PATH whoami npm --version node --version 

结果是:

 [EnvInject] - Loading node environment variables. Building in workspace /var/lib/jenkins/jobs/test- nodejs_test/workspace [workspace] $ /bin/sh -xe /tmp/hudson1755936462393481437.sh + echo /usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games /usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games + whoami jenkins + npm --version /tmp/hudson1755936462393481437.sh: 4: /tmp/hudson1755936462393481437.sh: npm: not found Build step 'Execute shell' marked build as failure Started calculate disk usage of build Finished Calculation of disk usage of build in 0 seconds Started calculate disk usage of workspace Finished Calculation of disk usage of workspace in 0 seconds Finished: FAILURE 

我不知道为什么它是失败的,我相信这是因为PATH没有设置。 但是,如果我login到Jenkins服务器并且在/etc/environment指定了PATH,它将在shell中工作,但不在Jenkins中:

 jenkins@JENIS-SERVER:/home/user$ npm --version 3.10.10 

Jenkins在连接到代理时不使用loginshell。

您可以通过检查“环境variables”并添加一个名称为PATH+NPM+后的名称可以是任何内容)以及值为/usr/local/wherever来添加到PATH