2010-05-12 11 views
12

क्या मैवेन के साथ build.xml स्क्रिप्ट निष्पादित करना संभव है?मैवेन के साथ build.xml निष्पादित करें

यह स्क्रिप्ट मेरी सभी परियोजनाओं और उपप्रोजेक्ट्स की जांच करता है और मैंने अभी मैवेन का उपयोग करने के लिए उपयोग किया है, वास्तव में पहले से अधिक चींटी का उपयोग नहीं किया था और मुझे पता है कि चींटियों का उपयोग मेवेन के साथ किया जा सकता है। तो मेरा सवाल है: कैसे?

उत्तर

7

मैं वास्तव में इस दृष्टिकोण का एक बड़ा प्रशंसक नहीं हूँ (या तो चींटी, या Maven, लेकिन नहीं एक कमीने मिश्रण का उपयोग करें), लेकिन आप Maven AntRun Plugin साथ एक बाहरी build.xml उपयोग कर सकते हैं:

<project> 
    ... 
    <build> 
    <plugins> 
     ... 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-antrun-plugin</artifactId> 
     <configuration> 
      <tasks> 
      <taskdef resource="net/sf/antcontrib/antcontrib.properties" 
       classpathref="maven.plugin.classpath" /> 
      <ant antfile="${basedir}/build.xml"> 
       <target name="test"/> 
      </ant> 
      </tasks> 
     </configuration> 
     <dependencies> 
      <dependency> 
      <groupId>ant-contrib</groupId> 
      <artifactId>ant-contrib</artifactId> 
      <version>1.0b3</version> 
      </dependency> 
     </dependencies> 
     </plugin> 
    </plugins> 
    </build> 
</project> 

और फिर से चलाने के mvn antrun:run (या execution के अंदर कॉन्फ़िगरेशन डालें यदि आप एंटीरुन प्लगइन को जीवन चक्र चरण में बांधना चाहते हैं, तो Usage पृष्ठ देखें)।

अद्यतन: यदि आप चींटी-contrib से चीजों का उपयोग कर रहे हैं, तो आपको इसे प्लगइन की निर्भरता के रूप में घोषित करने की आवश्यकता है। मैंने इसे प्रतिबिंबित करने के लिए प्लगइन कॉन्फ़िगरेशन अपडेट किया है। taskdef तत्व भी ध्यान दें जो मैंने जोड़ा है (मुझे यकीन नहीं है कि आपको classpathref विशेषता की आवश्यकता है)।

+0

$ {basedir} कौन सा स्थान है? Pom.xml के बगल में? या? –

+0

@ गैंडफ हां, '$ {basedir} 'pom.xml –

+0

युक्त निर्देशिका का प्रतिनिधित्व करता है मैंने एंट्रिन प्लगइन के v1.7 का उपयोग करके यह कोशिश की और ऐसा लगता है कि लक्ष्य अब चलाया गया है उदाहरण:' mvn antrun: run' –

0

आप Maven-Ant Plugin के माध्यम से चींटी स्क्रिप्ट निष्पादित कर सकते हैं, लेकिन आपको अपनी परियोजना को चेकआउट करने के लिए चींटी की आवश्यकता क्यों है? क्या आपने अपनी उप-परियोजनाओं को एक ही पेड़ में व्यवस्थित नहीं किया है?

+1

मैं कार्य टैग के बीच चींटी लक्ष्य डालता हूं और मुझे यह त्रुटि मिलती है 'समस्या: कार्य बनाने में विफल या लक्ष्य टाइप करें कारण: नाम अपरिभाषित है। –

+0

@khmarbaise' क्या आपने अपनी उप-परियोजनाओं को व्यवस्थित नहीं किया है एक ही पेड़ '- तुम्हारा क्या मतलब है? –

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