java 在 gradle 中使用参数运行 jar
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/29643973/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Run jar with parameters in gradle
提问by Jason Saruulo
I want to run a jar file with parameters located at C:/Users/nwuser/FitNesse/fitnesse-standalone.jar in my gradle script. I know how to do it without parameters:
我想在我的 gradle 脚本中运行一个参数位于 C:/Users/nwuser/FitNesse/fitnesse-standalone.jar 的 jar 文件。我知道如何在没有参数的情况下做到这一点:
apply plugin: 'java'
task runJar(dependsOn:jar) << {
javaexec {
main="-jar"; args "C:/Users/nwuser/FitNesse/fitnesse-standalone.jar"
}
}
But now I want to do something similiar like (if using the console):
但现在我想做一些类似的事情(如果使用控制台):
java -jar fitnesse-standalone.jar -c "FrontPage?suite&format=text"
How can I apply -c "FrontPage?suite&format=text" inside my gradle script?
如何在我的 gradle 脚本中应用 -c "FrontPage?suite&format=text"?
Kind regards !
亲切的问候 !
回答by Ori Lentz
args is an array, so simply supply your arguments as such:
args 是一个数组,因此只需提供您的参数:
task runJar(dependsOn:jar) << {
javaexec {
main="-jar";
args = [
"C:/Users/nwuser/FitNesse/fitnesse-standalone.jar",
"-c",
"FrontPage?suite&format=text"
]
}
}
回答by bonh
If you're justtrying to run a FitNesse test suite with Gradle, you can add the FitNesse jar to your dependencies:
如果您只是尝试使用 Gradle 运行 FitNesse 测试套件,您可以将 FitNesse jar 添加到您的依赖项中:
repositories {
mavenCentral()
}
dependencies {
compile 'org.fitnesse:fitnesse:20161106'
}
and define a JavaExec
task like so:
并JavaExec
像这样定义一个任务:
task fitnesse(type: JavaExec) {
classpath = sourceSets.main.runtimeClasspath
main = 'fitnesseMain.FitNesseMain'
args '-c', 'FrontPage?suite&format=text'
}
And then run:
然后运行:
$ gradle fitnesse
...
Executing command: FrontPage?suite&format=text
--------
0 Tests, 0 Failures 0.091 seconds.