2012-02-22 8 views
8

निम्न स्निपेट मेवेन-कार्गो प्लगइन की कॉन्फ़िगरेशन का एक अंश है, लेकिन सवाल उस विशिष्ट प्लगइन से स्वतंत्र है।मेवेन - उसी चरण में विभिन्न प्लगइन लक्ष्यों का क्रम निर्धारित करें

  <executions> 
       <execution> 
        <id>start</id> 
        <phase>pre-integration-test</phase> 
        <goals> 
         <goal>deploy</goal> 
         <goal>start</goal> 
        </goals> 
       </execution> 
      </executions> 

यह विन्यास (बस प्लगइन एक कॉल की सुविधा देता है) pre-integration-test चरण तक इंतजार करेंगे, तो अपने लक्ष्यों को deploy और start (इसी क्रम में) आग।

कहें कि मेरे पास एक और प्लगइन बी है जो प्रासंगिक चरण में प्रासंगिक है।

  1. से पहले (के बाद) एक प्लगइन बी के लक्ष्यों को निष्पादित करने के लिए मेरे पास क्या विकल्प हैं? (SomeStuff -> तैनाती -> शुरू)
  2. निष्पादित प्लगइन बी के लक्ष्यों प्लगइन एक के लक्ष्यों के बीच (तैनात -> someStuff -> शुरू)

मैं समझ इसका जवाब (1) here, जोड़ने है पीओएम में प्लगइन परिभाषा के क्रम में लक्ष्यों का क्रम। लेकिन मुझे नहीं पता (2)।

उत्तर

10

आप (1) के बारे में सही हैं। यदि एक ही चरण में दो प्लगइन निष्पादित किए जाने हैं, तो उन्हें pom.xml में घोषित क्रम में निष्पादित किया जाएगा।

मैं 100% के बारे में यकीन नहीं है (2), लेकिन मुझे लगता है कि यह कुछ हैक्स के बिना असंभव है, exec-maven-plugin का उपयोग कर, उदाहरण के लिए:

<!-- deploy --> 
<plugin> 
    <groupId>org.codehaus.cargo</groupId> 
    <artifactId>cargo-maven2-plugin</artifactId> 
    <executions> 
    <execution> 
     <id>deploy</id> 
     <phase>pre-integration-test</phase> 
     <goals> 
     <goal>deploy</goal> 
     </goals> 
    </execution> 
    </executions> 
</plugin> 
<!-- do something --> 
<plugin> 
    <groupId>some_other_plugin</groupId> 
    <artifactId>some_other_plugin</artifactId> 
    <executions> 
    <execution> 
     <id>someStuff</id> 
     <phase>pre-integration-test</phase> 
     <goals> 
     <goal>some_goal</goal> 
     </goals> 
    </execution> 
    </executions> 
</plugin> 
<!-- start --> 
<plugin> 
    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>exec-maven-plugin</artifactId> 
    <executions> 
    <execution> 
     <id>start</id> 
     <phase>pre-integration-test</phase> 
     <goals> 
     <goal>exec</goal> 
     </goals> 
     <configuration> 
     <executable>mvn</executable> 
     <commandlineArgs>org.codehaus.cargo:cargo-maven2-plugin:start -Dparam=value</commandlineArgs> 
     </configuration> 
    </execution> 
    </executions> 
</plugin> 
+2

* कि * एक अच्छा एक :-) है –

संबंधित मुद्दे