2010-06-17 16 views
7

मैं अपनी जार फ़ाइल को धीरे-धीरे चलाने के लिए एक कार्य करने की कोशिश कर रहा हूं।gradle runJar कार्य?

मैं निम्नलिखित के साथ आए हैं:

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

हालांकि, मैं जार फ़ाइल का पथ को खोजने में असमर्थ हूँ। किसी भी मदद की बहुत सराहना की। धन्यवाद!

Misha

संपादित करें: ठीक है इस बल्कि अजीब है। यह कार्य संकलन आदि से पहले चलाता है ???

संपादित करें: फिक्स्ड।

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

धन्यवाद: कुंजी आशुलिपि

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

Misha

उत्तर

1

मेरे सबसे अच्छा समाधान अब तक में एक doLast {} अंकन में है, या,!

Misha

+1

हाय:

src/मुख्य/जावा में एक Main.java साथ

, मेरे build.gradle फ़ाइल

तरह
apply plugin: 'java' apply plugin: 'application' mainClassName = "Main" 

चल रहा है यह देता है लग रहा है! मैंने आपके समाधान की कोशिश की है, लेकिन मेरे पास जार से कोई आउटपुट नहीं है - मुझे केवल जावा परिणाम मिलता है: 1 जानकारी, हालांकि मैंने अपनी 'मुख्य' विधि में 'System.out' पर लिखा है ... मैं कैसे प्राप्त करूं उत्पादन? – emesx

+0

मुझे ** तर्क ** प्रदान करने की आवश्यकता है। –

2

आप jar.archivePath चर का उपयोग करने में सक्षम होना चाहिए;

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

मैं ** ** ** यहां कैसे प्रदान करूं? –

+1

यहां उदाहरण: http://stackoverflow.com/questions/10033853/how-to-pass-arguments-to-ant-java-method-in-groovy – TheKaptain

3

क्या आप The Application Plugin खोज रहे हैं? यह एक नया कार्य "रन" बनाता है, जो निर्दिष्ट जावा क्लास चलाता है।

9

कोपर का जवाब पूरी तरह से काम करता है।

gradle run     

:compileJava 
:processResources UP-TO-DATE 
:classes 
:run 
[Main.java's output] 
संबंधित मुद्दे