我正在尝试通过获取错误在Jenkins Pipeline中创建新文件。错误:java.io.FileNotFoundException:/var/lib/jenkins/workspace/Pipeline-Groovy/test.txt(无此类文件或目录)
但是当我在没有管道的情况下执行以下命令时,它创建了新文件
def newFile = new File("/var/lib/jenkins/workspace/test/test.txt")
newFile.append("hello\n")
println newFile.text
如果我在管道中使用相同的代码,则出现上述错误
pipeline {
agent any
options {
buildDiscarder(logRotator(numToKeepStr: '5'))
timestamps()
}
stages {
stage('Demo1-stage') {
steps {
deleteDir()
script {
def Jobname = "${JOB_NAME}"
echo Jobname
}
}
}
stage('Demo-2stage') {
steps {
script {
def workspace = "${WORKSPACE}"
echo workspace
def newFile = new File("/var/lib/jenkins/workspace/Pipeline-Groovy/test.txt")
newFile.createNewFile()
sh 'ls -lrt'
}
}
}
}
}
似乎您的文件夹不存在。除非有必要,否则在创建文件时不要提供绝对路径。我看到您的情况需要在工作区中有一个文件。始终使用${WORKSPACE}
获取当前工作目录。