首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >将名称传递给Gradle Groovy脚本

将名称传递给Gradle Groovy脚本
EN

Stack Overflow用户
提问于 2018-11-10 15:02:26
回答 2查看 915关注 0票数 0

我有一个在生成SpringBoot jar文件之后运行的gradle脚本:

代码语言:javascript
运行
复制
task runScript (dependsOn: 'bootJar', type: JavaExec) {
    main = 'postpackage'
    classpath = sourceSets.main.runtimeClasspath
}

到目前为止,gradle脚本只是打印了一条消息:

代码语言:javascript
运行
复制
println "hello world from groovy version ${GroovySystem.version}"

这在我的身材中很好用。

分级runScript 任务: groovy版本2.4.15中的runScript hello world

我想要的是:

代码语言:javascript
运行
复制
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:

代码语言:javascript
运行
复制
println "hello world from groovy version ${GroovySystem.version}"

println "hello world from groovy version $bootJar.archiveName"

build.gradle:

代码语言:javascript
运行
复制
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中的异常

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-11-10 17:38:11

答案:

这样通过build.gradle传递参数:

代码语言:javascript
运行
复制
task runScript (dependsOn: 'bootJar', type: JavaExec) {
    main = 'postpackage'
    classpath = sourceSets.main.runtimeClasspath
    args "${bootJar.archiveName}"
}

在脚本中引用它如下:

代码语言:javascript
运行
复制
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”。

票数 0
EN

Stack Overflow用户

发布于 2019-03-06 18:22:51

您应该能够将bootjar引用为"jar“。

打印语句示例:

代码语言:javascript
运行
复制
println "hello world from groovy version ${jar.archiveName}"
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53240211

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档