我正在创建简单的Java类,我想使用gradle创建开箱即用的启动器。
所以我希望能够通过gradle运行Java程序:
gradlew clean run These are my command line arguments
其中These are my command line arguments
直接传递给我的public static void main(String... args)
方法。
我正在使用apply plugin: "application"
给我run
任务。但是,当我运行这个'按原样#39;我有:
* What went wrong:
Task 'These' not found in root project 'question1'. Some candidates are: 'test'.
答案 0 :(得分:8)
Gradle将每个不以连字符(-
)开头的参数解释为任务名称,以定义在构建期间将执行哪些任务。由于名称为These
的任务不存在,因此构建失败。
您正在使用Gradle应用程序插件,正如您所说,它提供了run
任务。 docs显示run
任务属于JavaExec
类型。因此,要应用您的参数,请通过run
:
args
任务中
run {
args 'These are my command line arguments'
}
要修改每个构建的参数而不更改build.gradle
文件,只需使用项目属性:
run {
args findProperty('runArgs')
}
并致电gradle clean run -PrunArgs='These are my command line arguments'