我有一个构建管道,我想在将特定 jar(带有一些 args)复制到依赖列表中的单独文件夹后运行它。
目前我正在做以下事情:
task copyToLib(type: Copy, dependsOn: classes) {
into "$buildDir/server"
from(configurations.compile) {
include "webapp-runner*"
}
ext.serverPath = fileTree("$buildDir/server/").include("webapp-runner-*.jar").getSingleFile()
}
task run(type: Exec, dependsOn: [copyToLib, war]) {
mustRunAfter copyToLib
executable 'java'
args '-jar', copyToLib.serverPath, war.archivePath, '--port', "$port"
}
但它失败了,Expected directory '...' to contain exactly one file, however, it contains no files.
因为我猜serverPath
是在配置阶段设置的文件还没有被复制。我该如何解决这个问题?