2013-04-08 9 views
38

का उपयोग करके एक मेवेन बनाई गई जार फ़ाइल को चलाने के लिए मुझे कमांड लाइन का उपयोग करके निम्न मेवेन प्रोजेक्ट चलाने की कोशिश करने में कुछ मदद चाहिए: https://github.com/sarxos/webcam-capture, वेबकैम-कैप्चर-क्यूआरकोड उदाहरण वह है जिसे मैं आजमा रहा हूं चलाते हैं। मैंने इसे ईसीप्लेस आईडीई का उपयोग करके चलाया है, लेकिन इसे कमांड लाइन का उपयोग करने के लिए इसे स्थानांतरित करने की आवश्यकता है। मेरे पास जार का निर्माण मैवेन द्वारा किया गया है।केवल एक कमांड लाइन

मैं

java -classpath ./webcam-capture/target/webcam-capture-0.3.10-SNAPSHOT.jar com.github.sarxos.webcam.WebcamQRCodeExample  

कोशिश कर रहा हूँ, लेकिन मैं

Exception in thread "main" java.lang.NoClassDefFoundError: com/github/sarxos/webcam/WebcamQRCodeExample 
Caused by: java.lang.ClassNotFoundException: com.github.sarxos.webcam.WebcamQRCodeExample 

उत्तर

2

मैं अपने मामले में यकीन नहीं जा रहे हैं। लेकिन जैसा कि मैंने से cmd हम आदेश के बाद का उपयोग कर सकते हैं किसी भी जार फ़ाइल को चलाने के जानते हैं:

निर्देशिका जहाँ आपके जार फ़ाइल में सहेजा गया है अप करने के लिए जाओ:

java -jar <jarfilename>.jar 

लेकिन आप निम्नलिखित लिंक देख सकते हैं। मुझे आशा है कि यह आप में मदद करेंगे:

Run Netbeans maven project from command-line?

http://www.sonatype.com/books/mvnref-book/reference/running-sect-options.html

+2

यह केवल तभी काम करता है जब जार में प्रकट होता है; इस मामले में कोई नहीं है। फिर भी आपका धन्यवाद। – Oujk

+0

एक मेवेन जार में निर्भरता शामिल नहीं है –

77

बस exec-maven-plugin का उपयोग करें।

<build> 
    <plugins> 
     <plugin> 
      <groupId>org.codehaus.mojo</groupId> 
      <artifactId>exec-maven-plugin</artifactId> 
      <version>1.2.1</version> 
      <configuration> 
       <mainClass>com.example.Main</mainClass> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 

तो फिर तुम आप कार्यक्रम चलाने:

mvn exec:java 
+3

मुझे इसे कहां जोड़ना चाहिए? मुख्य परियोजना pom.xml करने के लिए? – Oujk

+0

@ ओजक हां, पोम फ़ाइल – maba

+0

किसके लिए? परियोजना में लगभग हर एक निर्देशिका के लिए एक pom.xml है। – Oujk

11

1 कदम: pom.xml में इस सामग्री जोड़ें

<build> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-shade-plugin</artifactId> 
      <version>2.1</version> 
      <executions> 
       <execution> 
        <phase>package</phase> 
        <goals> 
         <goal>shade</goal> 
        </goals> 
        <configuration> 
         <transformers> 
          <transformer 
           implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> 
          </transformer> 
         </transformers> 
        </configuration> 
       </execution> 
      </executions> 
     </plugin> 
    </plugins> 
</build> 

2 कदम: इस कमांड लाइन लाइन द्वारा निष्पादित ।

cd /go/to/myApp 
mvn clean 
mvn compile 
mvn package 
java -cp target/myApp-0.0.1-SNAPSHOT.jar go.to.myApp.select.file.to.execute 
6

इस आदेश का उपयोग करें।

mvn package 

पैकेज जार फ़ाइल बनाने के लिए। फिर, यह आदेश चलाएं।

java -cp target/artifactId-version-SNAPSHOT.jar package.Java-Main-File-Name 

after mvn package command. Target folder with classes, test classes, jar file and other resources folder and files will be created

अपना खुद का artifactId, संस्करण और पैकेज और जावा मुख्य फ़ाइल टाइप करें।