2010-10-26 14 views
12

मुझे लगता है कि मेरे सवाल का आसान है। हालांकि यह आश्चर्य की बात है कि मुझे कोई आसान समाधान नहीं मिला।स्रोत और जावाडोक जार पीढ़ी

मैं पर Netbeans एक खुला स्रोत जावा पुस्तकालय परियोजना का विकास कर रहा हूँ और कई अन्य लोगों की तरह मैं binary.jar, source.jar और javadoc.jar के रूप में इसे जारी रखना चाहते हैं।

वहाँ एक रास्ता उन्हें Netbeans पर स्वचालित रूप से उत्पन्न करने के लिए है? मुझे पता है मैवेन कर सकते हैं। लेकिन सीखने की अवस्था बहुत लंबी लगती है।

एक ऐसी ही सवाल ही नहीं है, लेकिन केवल इस सवाल का जवाब काम नहीं किया: Automatically generating source and doc jars in Netbeans

+0

ए) मुझे लगता है कि मेवेन समाधान के लिए सीखने की वक्र मैन्युअल समाधान से बहुत कम है b) कृपया परिभाषित करें "काम नहीं किया" –

उत्तर

11

यहाँ समाधान मैं अंत में के साथ आया है। यह चींटी का उपयोग करता है और जावाडोक और स्रोत जार उत्पन्न करता है। फिर यह रिलीज करने के लिए तैयार एक ज़िप फ़ाइल में बाइनरी जार, javadoc, source.jar, लाइसेंस और रीडेमे फ़ाइल संग्रहित करता है।

<target name="-pre-init"> 
    <property file="version.properties"/> 
    <property name="dist.jar" value="dist/${ant.project.name}-${project.version}.jar"/> 
</target> 

<target description="bundle sources in a jar" name="package-sources"> 
    <jar basedir="src" destfile="build/release/${ant.project.name}-${project.version}-sources.jar"/> 
</target> 


<target name="package_for_release" depends="jar,javadoc, package-sources"> 
    <mkdir dir="build/release"/> 
    <copy file="${dist.jar}" todir="build/release/"/> 
    <copy file="licence.txt" todir="build/release/"/> 
    <copy file="beni_oku.txt" todir="build/release/"/> 
    <mkdir dir="build/release/doc"/> 
    <copy todir="build/release/doc"> 
     <fileset dir="dist/javadoc" includes="**"/> 
    </copy> 

    <zip basedir="build/release/" includes="**" destfile="dist/${ant.project.name}-${project.version}.zip"/> 
</target> 

राइट क्लिक से NetBeans में खोलें build.xml -> चलाने लक्ष्य -> ​​[अन्य लक्ष्यों] -> package_for_release

स्क्रिप्ट से एक गुण फ़ाइल संस्करण संख्या हो जाता है। मुझे यह समाधान here से मिला है।

1

चींटी http://ant.apache.org/ की कोशिश करो। मेवेन से सीखना आसान है और आपका कोड संकलन कर सकता है।

+0

मेरे अनुभव में यह दूसरी तरफ है। हमने स्रोत कोड और कई जार-फाइलों के साथ हमारे एप्लिकेशन को बनाने के लिए एक चींटी निर्माण स्क्रिप्ट का उपयोग किया। बाद में हम मेवेन में चले गए और मेरी धारणा यह थी कि यह स्वचालित lib fetching के साथ अधिक शक्तिशाली है। लेकिन मेरे पास दोनों के साथ केवल सीमित अनुभव है। – kasten

+3

@seanizer: विभिन्न प्रकार के कठिन हैं। चींटियों का उपयोग करना बहुत आसान है और वृद्धिशील रूप से सीखना है क्योंकि आपको इसके आसपास अपनी परियोजना को व्यवस्थित करने की आवश्यकता नहीं है। –

+1

@ माइकल जो वास्तव में चींटी को कठोर बनाता है। मेवेन के साथ, आपको एक बार संक्रमण करना है और आप ऊपर और चल रहे हैं, चींटी के साथ आपको ट्विकिंग रखना है और सोचते रहें कि चीज़ें क्यों काम नहीं करतीं जैसे आप उन्हें उम्मीद करते हैं। मेवेन के साथ, सभी प्लगइन्स एक प्राकृतिक तरीके से मिलकर काम करते हैं, क्योंकि नीचे एक अच्छी तरह से परिभाषित मॉडल है जो हर कोई उपयोग करता है। –

0

Maven प्लगइन्स हो सकता है आप

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-javadoc-plugin</artifactId> 
    <version>2.7</version> 
    <executions> 
     <execution> 
      <goals> 
       <goal>jar</goal> 
      </goals> 
      <phase>package</phase> 
     </execution> 
    </executions> 
</plugin> 
<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-source-plugin</artifactId> 
    <version>2.0.4</version> 
    <executions> 
     <execution> 
      <goals> 
       <goal>jar</goal> 
      </goals> 
      <phase>package</phase> 
     </execution> 
    </executions> 
</plugin> 
+0

बस अपने प्रश्न को अधिक सावधानी से पढ़ें। हालांकि, एक साधारण परियोजना के लिए मेवेन एक सीखने की अवस्था में बहुत बड़ा प्रतिनिधित्व नहीं करता है, इमो। –

0
ant साथ

का जवाब आप आसानी से, अपने जावाडोक उत्पन्न कर सकते हैं संकलन जार और ज़िप फ़ाइल बनाएँ। यह तुलना में यह NetBeans में क्या बेहतर है, वह अपने पसंदीदा IDE के साथ यह कर सकता है अगर किसी को योगदान करने के लिए चाहते हैं, क्योंकि।

0

आप एक पुस्तकालय है कि दूसरों को तो विकसित आप Maven उपयोग करने के बारे में सोचना चाहिए मदद कर सकता है विकसित कर रहे हैं।

इस तरह से आप परियोजना अपने आईडीई से स्वतंत्र हो जाएगा और यह निर्भरता, परीक्षण और तैनाती उनके own.m

11

रोलिंग केन्द्र का ध्यान रखा जाएगा, के बजाय कभी योगदानकर्ता यह सब Maven आप की जरूरत config है स्रोत और javadoc स्वचालित रूप से निर्माण के लिए संलग्न करें:

<build> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-javadoc-plugin</artifactId> 
      <version>2.7</version> 
      <executions> 
       <execution> 
        <id>attach-javadoc</id> 
        <goals> 
         <goal>jar</goal> 
        </goals> 
       </execution> 
      </executions> 
     </plugin> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-source-plugin</artifactId> 
      <version>2.1.2</version> 
      <executions> 
       <execution> 
        <id>attach-source</id> 
        <goals> 
         <goal>jar</goal> 
        </goals> 
       </execution> 
      </executions> 
     </plugin> 
    </plugins> 
</build> 

यह बहुत भयानक नहीं है, है ना?

+9

और लोग अपने वर्बोज़ एक्सएमएल प्रारूप के लिए चींटी की आलोचना करते हैं ... –

+2

क्या वे करते हैं? मैं केवल चींटी की आलोचना करता हूं क्योंकि यह कोड के खिलाफ और डीबग करने के लिए भयानक है। गंभीरता से: आप इस कोड से समूह आईडी, निष्पादन आईडी और प्लगइन संस्करणों को पट्टी कर सकते हैं और यह छोटा होगा, लेकिन मैं चीजों को जादू करना पसंद करता हूं। –

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