java - चींटी कक्षापथ से जार निकालें




maven ant (2)

मैं कुछ विरासत प्रोजेक्ट पर "क्लीन मैवेन" सेटअप बनाने की कोशिश कर रहा हूं जो कि चींटी स्क्रिप्ट का उपयोग करता है मुझे चींटी के बारे में ज्यादा जानकारी नहीं है, इसलिए मेरा प्रश्न भोली लग सकता है।

मुझे लगभग पूरा कर लिया गया है, लेकिन कक्षा में एक अतिरेक के कारण डिलीवरी आईटी स्क्रिप्ट विफल हो रही है। यदि मैं बिल्ड को समझता हूं, तो उन पंक्तियों को "प्रदान किए गए" क्षेत्र में प्रत्येक लिपि के वर्गपथ में जोड़ना चाहिए:

<artifact:dependencies pathid="dependency.classpath" scopes="provided">
    <pom file="./pom.xml"/>
</artifact:dependencies>

और फिर यह एक:

<path id="completecp">
    <fileset dir="${ant.home}/lib">
        <include name="*.jar" />
    </fileset>
    <path refid="dependency.classpath" />
</path>

Ant.home निर्देशिका में लिब्स के लिए उन निर्भरता जोड़ें।

परेशानी यह है कि मैं एक मेवेन पॉम का उपयोग कर रहा हूं जो कि एक पैरेंट पॉम पर निर्भर है जो मैं संशोधित नहीं कर सकता, और नतीजतन, मेरी कक्षा में चींटी के तीन अलग-अलग संस्करण हैं: पीओएम (1.5 और 1.7) से दो 1) और एक ग्रहण से (1.8.2)। मैंने कोशिश की है (सख्त!) Addind कुछ मेवेन बहिष्करण, लेकिन बुरी तरह विफल

तो मैंने सोचा: शायद चींटी कक्षापथ से जार को छोड़ने का एक तरीका है। मैंने डालने की कोशिश की है:

<exclude name="*ant\1.7.1\ant-1.7.1.jar"/>
<exclude name="*ant\1.5\ant-1.5.jar"/>

fileset भाग में, लेकिन यह काम नहीं करता है क्या उन निरर्थक जार को छोड़ने का कोई तरीका है?


इस तरह से प्रयास करें: -

<exclude name="**/ant/1.7.1/ant-1.7.1.jar"/>
<exclude name="**/ant/1.5/ant-1.5.jar"/> 

बैक स्लैश के बजाय आगे स्लैश का उपयोग करने की कोशिश करें, अर्थात

<exclude name="*ant/1.7.1/ant-1.7.1.jar"/>





classpath