Jenkins:java.io.IOException:无法运行程序“节点”:error = 2,没有这样的文件或目录

时间:2018-10-12 11:27:21

标签: node.js shell jenkins

我是jenkins和shell脚本的新手,我有一个Jenkins管道脚本,该脚本有一些阶段。正在安装NOdejs。但是面临一些问题。 我遇到错误了。
 ** java.io.IOException:无法运行程序“节点”:error = 2,没有这样的文件或目录 **

请检查以下代码,并让我知道我的错误。

on_exit

日志消息:

stage('Build') { // for display purposes

     sh "wget http://wwwin-xxxxxxxxxxx.xxxxxxxxxxxx.com/repo/softwares/node/node- 
        v8.11.1-linux-x64.zip"
        // sh "ls -l"
        sh "unzip node-v8.11.1-linux-x64.zip"
        sh "export PATH='${WORKSPACE}/node-v8.11.1-linux-x64/bin:$PATH'"

     sh "node-v8.11.1-linux-x64/bin/npm --version" 
}

   stage('Static Analysis'){
       def scannerHome = tool 'SONARQUBE_HOME';

       sh "rm -rf ${env.workspace}/xxxxx-core/node_modules"
       sh "rm -rf ${env.workspace}/xxxxx-core/microservices/core/node_modules"
       sh "rm -rf ${env.workspace}/xxxxx-core/microservices/auth/node_modules"
       sh "rm -rf ${env.workspace}/xxxxxx-core/microservices/xxxxx-ms/node_modules"
       sh "PATH=\"${WORKSPACE}/node-v8.11.3-linux-x64/bin:$PATH\" ${scannerHome}/bin/sonar-scanner -e -Dsonar.projectKey=xxxxxxxx.xxxx:xxxx-core -Dsonar.login=837687654756743509010101010-Dsonar.projectName=com.xxxxxxxxxx.services:xxxxxx-core  -Dsonar.sources=${env.workspace}/xxxxxx-core/src,${env.workspace}/xxxxxx-core/microservices/core/src,${env.workspace}/xxxxxxx-core/microservices/xxxx/src,${env.workspace}/x-xxxxxxxcore/microservices/osupgrade-ms -Dsonar.host.url=https://xxxxx-sonar-sjc.xxxxxxxx.com/sonar/ -Dsonar.analysis.mode=preview -Dsonar.issuesReport.html.enable=true"

   }

我正在使用Linux,感谢您的快速响应

2 个答案:

答案 0 :(得分:0)

您需要将nodejs可执行文件符号链接到节点

sudo ln -s "$(which nodejs)" /usr/local/bin/node

希望这会有所帮助!

答案 1 :(得分:0)

我遇到了同样的问题。

当我通过 nvm 安装 Node 时,我在 Mac 上遇到了这个错误

尝试卸载它,然后通过 NodeJS 站点安装。

链接 - https://nodejs.org/en/

你会摆脱这个错误。