2015-04-15 5 views
11

में पैरामीटर के साथ जार चलाएं मैं अपने ग्रेडल स्क्रिप्ट में सी: /उसर/एनव्यूसर/फ़िटनेसे/फ़िंटें-standalone.jar पर स्थित पैरामीटर के साथ एक जार फ़ाइल चलाने के लिए चाहता हूं। मुझे पता है कि मानकों के बिना यह करने के लिए:ग्रेडर

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" 

मैं कैसे आवेदन कर सकता -c "FrontPage सूट & प्रारूप = पाठ "मेरे gradle स्क्रिप्ट के अंदर?

दयालु संबंध!

+1

Gradle 4.3 के अनुसार, "Task.leftShift (क्लोजर) विधि पदावनत किया गया है और Gradle 5.0 में निकालने के लिए शेड्यूल किया गया है। कृपया इसके बजाय कार्य .doLast (एक्शन) का उपयोग करें। " – bonh

उत्तर

23

आर्ग, एक सरणी है तो बस इस तरह के रूप में अपने तर्क की आपूर्ति:,

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

आप सिर्फ Gradle के साथ एक FitNesse टेस्ट स्वीट भागने की कोशिश कर रहे हैं आप अपने निर्भरता को FitNesse जार में जोड़ सकते हैं :

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.