通过 jenkins 执行 shell 脚本时出现问题

Issue while executing shell script through jenkins

我正在尝试通过 jenkins 管道 运行 一个 shell 脚本。当我 运行 它手动时它工作正常。但是在同一台机器上,当我通过 jenkins 文件执行它时,它失败了。

詹金斯文件:-

if ("${BRANCH_NAME}".startsWith("users"))
        {
        node ('linux')
        {
            stage('run groovy script')
            {
            stdout = sh(script: '"$MyWorkSpaceLinux/planning/build/jdocgroovy.sh" ${BUILD_NUMBER}', returnStdout : true)
            println("running groovy stdout################ " + stdout + " ####################")
            }
        }
        }

错误如下:

javadoc: error - cannot read jdocgroovyfiles_ux.dat (No such file or directory)
cp: cannot stat `groovy-examples.html': No such file or directory
Emptying out Javadoc folder
Generatig Javadoc files

下面是shell脚本:-

export PLANNING_HOME=/scratch/pqsharma/jenkins/workspace/Planning_develop/planning/HspJS
export JDK_HOME=/usr/lib/jvm/java-1.8.0-openjdk.x86_64/

build_no=
echo Emptying out Javadoc folder
mkdir "/net/slcnas502.us.oracle.com/export/EPM_Planning/PlanningDev/Buzz/tmp_pre_rel/Planning/builds/develop/${build_no}/src/javadocgroovy"


echo Generatig Javadoc files
"${JDK_HOME}/bin/javadoc" -classpath ${PLANNING_HOME}/lib/Jersey/jersey-core.jar -sourcepath "${PLANNING_HOME}/src" -windowtitle "Oracle Enterprise Performance Management Cloud, Groovy Rules" -header "Oracle Enterprise Performance Management Cloud, Groovy Rules Java API Reference" -bottom "Copyright © 2017, 2020, Oracle and/or its affiliates. All rights reserved." -overview groovy-overview.html -public -nodeprecated -d "/net/slcnas502.us.oracle.com/export/EPM_Planning/PlanningDev/Buzz/tmp_pre_rel/Planning/builds/develop/${build_no}/src/javadocgroovy" @jdocgroovyfiles_ux.dat

cp groovy-examples.html "/net/slcnas502.us.oracle.com/export/EPM_Planning/PlanningDev/Buzz/tmp_pre_rel/Planning/builds/develop/${build_no}/src/javadocgroovy"

有人好心帮我理解为什么我不能通过 jenkins 文件执行它

问题是 Jenkins 期望为所有文件提供完整路径。给出路径后,它开始正常工作。