7

我正在尝试制定一项任务以在 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

4 回答 4

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]
于 2013-11-24T23:56:02.757 回答
3

您在寻找应用程序插件吗?它创建一个新任务“run”,它运行指定的 java 类。

于 2013-01-02T15:56:36.953 回答
2

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

task runJar(dependsOn:[jar]){
  ant.java(jar: jar.archivePath ,fork:true)
}
于 2010-07-29T05:35:25.427 回答
1

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

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

谢谢!

米莎

于 2010-06-17T16:25:57.790 回答