gradle runJar任务?

时间:2010-06-17 16:24:20

标签: java gradle

我正在尝试使用gradle运行我的Jar文件。

我想出了以下内容:

task runJar(dependsOn:[jar]){
  ant.java(jar:,fork:true)
}

但是,我无法找到jar文件的路径。任何帮助非常感谢。谢谢!

米莎

编辑:好的,这很奇怪。此任务在编译之前运行,等等。

编辑:修正。关键是doLast {}表示法,或者简写

task runJar(dependsOn:"jar")<<{
  ant.java(jar:"${libsDir}${File.separator}${archivesBaseName}.jar",fork:true)
}

米莎

4 个答案:

答案 0 :(得分:9)

Koppor的答案非常有效。

使用src / main / java中的Main.java,我的build.gradle文件看起来像

apply plugin: 'java'
apply plugin: 'application'

mainClassName = "Main"

运行它给出:

gradle run                 

:compileJava
:processResources UP-TO-DATE
:classes
:run
[Main.java's output]

答案 1 :(得分:3)

您在寻找The Application Plugin吗?它创建一个新的任务“run”,它运行指定的java类。

答案 2 :(得分:2)

您应该能够使用jar.archivePath变量;

task runJar(dependsOn:[jar]){
  ant.java(jar: jar.archivePath ,fork:true)
}

答案 3 :(得分:1)

到目前为止我的最佳解决方案:

task runJar(dependsOn:[jar]){
  ant.java(jar:"${libsDir}${File.separator}${archivesBaseName}.jar",fork:true)
}

谢谢!

米莎