我有一个在生成SpringBoot jar文件之后运行的gradle脚本:
task runScript (dependsOn: 'bootJar', type: JavaExec) {
main = 'postpackage'
classpath = sourceSets.main.runtimeClasspath
}
到目前为止,gradle脚本只是打印了一条消息:
println "hello world from groovy version ${GroovySystem.version}"
这在我的身材中很好用。
分级runScript 任务: groovy版本2.4.15中的runScript hello world
我想要的是:
println "hello world generated jar file name is ${jarFileName}"
我想要做的是传递SpringBoot生成的jar名称,或者在build/libs/my-service-0.1.1.jar
中传递jar的名称或其他任何内容。
所以它会打印:
hello生成的jar文件名是my-service-0.1.1.jar
我怎么能这么做?
以下是我尝试过的:
postpackage.groovy:
println "hello world from groovy version ${GroovySystem.version}"
println "hello world from groovy version $bootJar.archiveName"
build.gradle:
task runScript (dependsOn: 'bootJar', type: JavaExec) {
main = 'postpackage'
classpath = sourceSets.main.runtimeClasspath
}
以下是错误:
任务:runScript失败的hello来自线程“groovy.lang.MissingPropertyException”中的线程"main“groovy.lang.MissingPropertyException: bootJar for class: postpackage中的异常
发布于 2018-11-10 09:38:11
答案:
这样通过build.gradle传递参数:
task runScript (dependsOn: 'bootJar', type: JavaExec) {
main = 'postpackage'
classpath = sourceSets.main.runtimeClasspath
args "${bootJar.archiveName}"
}
在脚本中引用它如下:
println "hello world from groovy version ${GroovySystem.version}"
println "hello world from groovy version ${args[0]}"
效果很好:
:bootJar最新版本: groovy版本2.4.15中的runScript hello world 你好,来自groovy版本my 0.1.1.jar 在2s 5可操作的任务中成功构建:1已执行,4最新12:36 PM:任务执行完成了“runScript”。
发布于 2019-03-06 10:22:51
您应该能够将bootjar引用为"jar“。
打印语句示例:
println "hello world from groovy version ${jar.archiveName}"
https://stackoverflow.com/questions/53240211
复制相似问题