java - एक्लिप्स दो बार एएनटी चलाता है, यहां तक ​​कि केवल एक बार चलने के लिए भी



eclipse ant (1)

एएनटी एक बिल्डर है जिसे आपने परियोजना बिल्डरों में जोड़ा है। कृपया इसे यहां देखें:

परियोजना -> राइट क्लिक -> गुण -> बिल्डर्स

आप इसे "स्वचालित रूप से निर्मित" पर सेट एक्लिप्से के कार्यक्षेत्र के साथ संयोजन के रूप में सक्षम रख सकते हैं - यह स्वचालित बिल्ड को गति देगा

या, आप बिल्डर की सूची से बिल्डर को अचयनित कर सकते हैं और जरूरत पड़ने पर मैन्युअल रूप से चला सकते हैं!

यह एसओ क्यू + ए एक त्वरित (आगे) पढ़ा जाने योग्य है

https://code.i-harness.com

नेटबीन में, कुछ शोध के बाद, मैंने आईडीई को अपने जार और मेरी मैनिफ़ेस्ट फ़ाइल को जिस तरीके से तैयार किया था, उसे अनुकूलित करने के लिए फ़ाइल build.xml को संपादित करने में कामयाब रहा। मुझे ग्रहण के लिए एक परियोजना को स्थानांतरित करना पड़ा और यहां तक ​​कि जार बनाने का विकल्प भी पाया, लेकिन मुझे कुछ जरूरी जानकारी के साथ अपने जार बनाने की जरूरत है

मैंने अपनी बिल्ड में एक्लेप्से में buildfile एएनटी के रूप में फ़ाइल build.xml को जोड़ा है, लेकिन जब मैं इसे निष्पादित करता हूं, तो ग्रहण दो बार चलता है, एक बार में 2 जार फ़ाइलों को उत्पन्न करता है

मेरी फ़ाइल build.xml का पालन करें:

<?xml version="1.0" encoding="UTF-8"?>

<project name="GerOficios" default="makejar" basedir='.'>

    <target name="makejar">

        <property file="version_info.properties" />

        <property name="application.title" value="GerOficios_v6" />

        <property name="main.class" value="com/dfmachado/geroficios/View/ListaDeOficiosUI" />

        <buildnumber file="build.num" />

        <property name="build.version.num" value="${version.number}.${build.number}" />

        <tstamp>
            <format property="TODAY" pattern="dd/MM/yyyy - HH:mm:ss" />
        </tstamp>

        <property name="store.jar.name" value="GerOficios ${build.version.num}" />

        <property name="store.dir" value="store" />
        <property name="store.jar" value="${store.dir}/${store.jar.name}.jar" />

        <echo message="Packaging ${application.title} into a single JAR at ${store.jar}" />

        <mkdir dir="${store.dir}" />

        <jar destfile="${store.dir}/temp_final.jar" basedir="bin" filesetmanifest="skip">
            <zipgroupfileset dir="lib" includes="*.jar" />

            <manifest>
                <attribute name="Main-Class" value="${main.class}" />
                <attribute name="SplashScreen-Image" value="com/dfmachado/geroficios/View/image/minerva.png" />

                <attribute name="Build-OS" value="${os.name} version ${os.version} on ${os.arch}" />
                <attribute name="Java-Version" value="${javac.source}" />
                <attribute name="Implementation-Title" value="${application.title}" />
                <attribute name="Implementation-Version" value="${build.version.num}" />
                <attribute name="Built-By" value="${user.name}" />
                <attribute name="Built-Date" value="${TODAY}" />
            </manifest>
        </jar>

        <zip destfile="${store.jar}">
            <zipfileset src="${store.dir}/temp_final.jar" excludes="META-INF/*.SF, META-INF/*.DSA, META-INF/*.RSA" />
        </zip>
        <delete file="${store.dir}/temp_final.jar" />

    </target>

</project>

बस इंगित करने के लिए, ग्रहण ने नेटबीन में उत्पन्न होने वाले तरीके से एक जार उत्पन्न किया, समस्या एएनटी दो बार चलाती है और 2 जार उत्पन्न करती है, यहां तक ​​कि मैं केवल एक बार आदेश देता हूं, जैसा कि नीचे प्रिंट में देखा जा सकता है:

एक ही परियोजना में कमांड लाइन के माध्यम से चींटी को चलाने के लिए और केवल एक फाइल बनाई गई थी, जाहिरा तौर पर समस्या ग्रहण में कुछ कॉन्फ़िगरेशन थी, लेकिन मैं अब तक कोई भी खोज नहीं पाई है।





jar