使用 gradle 中的参数运行 jar

2022-09-02 09:23:11

我想运行一个 jar 文件,其参数位于 C:/Users/nwuser/FitNesse/fitnesse-standalone.jar在我的 gradle 脚本中。我知道如何在没有参数的情况下做到这一点:

apply plugin: 'java'

task runJar(dependsOn:jar) << {
  javaexec { 
    main="-jar"; args "C:/Users/nwuser/FitNesse/fitnesse-standalone.jar"
  } 
}

但现在我想做类似的事情(如果使用控制台):

java -jar fitnesse-standalone.jar -c "FrontPage?suite&format=text"

如何在我的 gradle 脚本中应用 -c “FrontPage?suite&format=text”?

亲切问候!


答案 1

args 是一个数组,所以只需提供这样的参数:

task runJar(dependsOn:jar) << {
  javaexec { 
    main="-jar";
    args = [
            "C:/Users/nwuser/FitNesse/fitnesse-standalone.jar",
            "-c",
            "FrontPage?suite&format=text"
           ]
  } 
}

答案 2

如果您只是尝试使用Gradle运行FitNesse测试套件,则可以将FitNesse jar添加到您的依赖项中:

repositories {
  mavenCentral()
}

dependencies {
  compile 'org.fitnesse:fitnesse:20161106'
}

并定义如下任务:JavaExec

task fitnesse(type: JavaExec) {
  classpath = sourceSets.main.runtimeClasspath

  main = 'fitnesseMain.FitNesseMain'

  args '-c', 'FrontPage?suite&format=text'
}

然后运行:

$ gradle fitnesse
...
Executing command: FrontPage?suite&format=text
--------
0 Tests,        0 Failures      0.091 seconds.