我正在编写一个Groovy脚本,以将某些文件从Jenkins主服务器(Windows)复制到从服务器(Linux)。但是我遇到了一个问题:File类在Linux文件夹路径中放置了'\'而不是'/',因此它无法识别该路径。 该错误表明找不到该文件:
正如您在屏幕快照中看到的那样,主路径很好,从路径也很好,直到我将其传递给File类以创建新文件。 这是我的Groovy脚本:
def master = build.getRootDir().getAbsolutePath() +"\\"
println "Master path: " + master
def slave = build.getEnvironment(listener).get("WORKSPACE") + "/"
println "Slave path: " + slave
def src = new File(master+'myFile.xml')
hudson.FilePath workspace = hudson.model.Executor.currentExecutor().getCurrentWorkspace()
File dst = new File("${workspace}/dst.xml")
println(dst)
dst << src.text
答案 0 :(得分:0)
您始终可以在$ workspace中将\
替换为/
。记住大约4 x \
def path = $/\home\sky\asas\file/$
String newPath = path.replaceAll("\\\\", "/")
println "New Path : " + newPath
[output] New Path : /home/sky/asas/file