gradle runJar task?
I am trying to make a task to run my Jar file in gradle.
I have come up with the following:
task runJar(dependsOn:[jar]){
ant.java(jar:,fork:true)
}
However, I am unable to find the path to the jar file. Any help much appre开发者_如何学运维ciated. Thank you!
Misha
EDIT: OK this is rather odd. This task runs before compile, etc.???
EDIT: Fixed. The key is in a doLast { } notation, or, in shorthand
task runJar(dependsOn:"jar")<<{
ant.java(jar:"${libsDir}${File.separator}${archivesBaseName}.jar",fork:true)
}
Misha
Koppor's answer works perfectly.
With a Main.java in src/main/java, my build.gradle file looks like
apply plugin: 'java'
apply plugin: 'application'
mainClassName = "Main"
Running it gives:
gradle run
:compileJava
:processResources UP-TO-DATE
:classes
:run
[Main.java's output]
Are you looking for the The Application Plugin? It creates a new task "run", which runs the specified java class.
You should be able to use the jar.archivePath variable ;
task runJar(dependsOn:[jar]){
ant.java(jar: jar.archivePath ,fork:true)
}
My best solution so far:
task runJar(dependsOn:[jar]){
ant.java(jar:"${libsDir}${File.separator}${archivesBaseName}.jar",fork:true)
}
Thank you!
Misha
精彩评论