Maven aggregation build uses different java than building a child module on its own -
मैंने एक अप्रत्याशित व्यवहार देखा मेरे पास एकत्रित लक्ष्य निष्पादन के प्रयोजनों के लिए एक समूह पीओएम है।
जब मैं बिल्ड कार्य निष्पादित करता हूं, तो एकत्रीकरण में शामिल मॉड्यूल पीओएम में अपने जेवाडॉक उत्पन्न होते हैं। जेवाडोक पीढ़ी को माता-पिता POM में परिभाषित किया गया है (जैसे कि एकत्रीकरण POM के समान नहीं):
& lt; प्लगइन & gt; & LT; ग्रुप & gt; org.apache.maven.plugins & lt; / ग्रुप & gt; & LT; artifactId & gt; Maven-जावाडोक-प्लगइन & lt; / artifactId & gt; & LT; संस्करण & gt; 2.9.1 & lt; / संस्करण & gt; & LT; फांसी & gt; & LT; निष्पादन & gt; & LT; आईडी & gt; देते-javadocs & lt; / आईडी & gt; & LT; लक्ष्यों & gt; & LT; लक्ष्य & gt; जार & lt; / लक्ष्य & gt; & Lt; / लक्ष्यों & gt; & Lt; / निष्पादन & gt; & Lt; / फांसी & gt; & Lt; / प्लगइन & gt;
बाल मॉड्यूल की अपनी पीओएम है, जिसमें एक पहलू जावा प्लगइन इस तरह परिभाषित किया गया है: (इस तरह से निर्माण टैग वास्तव में बच्चे POM में पूरे जैसा दिखता है:
& lt; build & gt; & lt; प्लगइन्स & gt; & lt; प्लगइन & gt; & lt; groupId & gt; org.codehaus.mojo & lt; / groupId & gt; & lt; artifactId & gt; एएसटीजे-एमवेन-प्लगइन & lt; संस्करण & gt; 1.6 1.7 & lt; / target & gt; 1.7 & lt; / target & gt; अनुपालन लेवल & gt; 1.7 & lt; / complianceevel & gt; & lt; वर्बोज़ & gt; सत्य & lt; / verbose & gt; & lt; & lt; / संस्करण & gt; & lt; कॉन्फ़िगरेशन & gt; स्रोत & gt; 1.7 & lt; / स्रोत & gt; & Lt; / executions & gt; लिफ्ट; निष्पादन & gt; & lt; लक्ष्य & gt; & lt; लक्ष्य & gt; संकलित & lt; / लक्ष्य & gt; & lt; / लक्ष्यों & gt; & lt; / executions & gt; & lt; / executions & gt; & lt; निर्भरता & Gt; & Lt; / निर्भरता & gt; & Lt; / प्लगइन & gt; & Lt; / प्लगइन्स & gt; & Lt; / निर्माण & gt;
अब, जब मैं एकत्रीकरण का निर्माण करता हूं, तो यह जावा 1.8 के साथ जावाडॉक्स उत्पन्न करता है (इसमें कोई जिक्र नहीं है कि किस तरह जावा को एकत्रीकरण पीओएम में उपयोग करना है):
Javadoc जानकारी का निर्माण ... मानक डास्कलेट संस्करण 1.8.0 सभी पेड़ों और कक्षाओं के लिए बिल्डिंग पेड़ ... ... 12 त्रुटियों 16 चेतावनियाँ
लेकिन जब मैं बस पर निर्माण चलाने बाल मॉड्यूल, यह जावा 1.7.0_45 का उपयोग करेगा
<पूर्व> Javadoc जानकारी का निर्माण ... मानक डोकालेट संस्करण 1.7.0_45 सभी पैकेज और कक्षाओं के लिए बिल्डिंग ट्री ... ... 2 चेतावनियाँ कोड> क्यों यह असंगत है? मुझे उम्मीद थी कि बिल्ड को समान कार्य करना चाहिए। क्या मुझसे कुछ गलत हो रही है? बाल मॉड्यूल (इसके POM के साथ) के कॉन्फ़िगरेशन का उपयोग करने के लिए एग्रीगेशन बिल्ड को कैसे कॉन्फ़िगर किया जाता है, जो मुझे लगता है कि किस तरह से डिफ़ॉल्ट होना चाहिए।
मेरी धारणा यह है कि एकत्रीकरण का निर्माण उसी चीज़ के समान है प्रत्येक बच्चे के मॉड्यूल पर मैन्युअल रूप से "स्थापित" लक्ष्य चलाना जैसे कि अलग परियोजना पर। क्या यह धारणा गलत है? (यदि ऐसा है तो ऐसा लगता है कि यह व्यवहार है) यदि हाँ, तो वास्तव में क्या हो रहा है?
अगर सूचना (पॉम कॉन्फ़िगरेशन के कुछ भाग) गायब हैं तो कृपया टिप्पणी करें।
< / html>
Comments
Post a Comment