मेरे पास दो मेवेन प्रोफ़ाइल प्रोफाइल-ए और प्रोफाइल-बी है। "बी" केवल सक्रिय होना चाहिए यदि "ए" सक्रिय नहीं है। तो अगर मैं कहेंगेमेवेन: केवल प्रोफ़ाइल ए सक्रिय करें यदि प्रोफ़ाइल बी सक्रिय नहीं है?
mvn install
प्रोफ़ाइल बी निष्पादित किया जाता है (लेकिन प्रोफ़ाइल-ए नहीं)। लेकिन अगर मैं
mvn install -Pprofile-A
तो फोन केवल प्रोफ़ाइल-ए निष्पादित किया जाता है (लेकिन प्रोफ़ाइल बी नहीं) होगा।
कोई संकेत देता है कि इसे प्राप्त करने के लिए मुझे अपने pom.xml को कैसे लिखना है?
मैं पहले से ही इस कोशिश की, लेकिन यह काम नहीं करता:
<profiles>
<profile>
<id>profile-A</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
...
</profile>
<profile>
<id>profile-B</id>
<activation>
<activeByDefault>true</activeByDefault>
<property>
<name>!profile-A</name>
</property>
...
</activation>
...
</profile>
</profiles>
बस एक बिंदु को स्पष्ट करना चाहता था जो मुझे लगभग 15 मिनट तक फेंक दिया। 'ActiveByDefault' (जोर मेरा) के संबंध में उपरोक्त लिंक के नवीनतम संस्करण से:" यह प्रोफ़ाइल स्वचालित रूप से सभी बिल्डों के लिए सक्रिय हो जाएगी जब तक कि एक ही प्रोफ़ाइल ** में एक अन्य प्रोफ़ाइल ** पहले वर्णित विधियों में से किसी एक का उपयोग करके सक्रिय नहीं किया जाता है। " मेरे मामले में, मैंने मूल पीओएम में प्रोफ़ाइल बी और एक बहु-मॉड्यूल निर्माण में एक पीओएम को प्रोफाइल ए में जोड़ा था। इस कॉन्फ़िगरेशन में, प्रोफ़ाइल बी को अक्षम नहीं किया गया था जब प्रोफ़ाइल ए को कमांड लाइन के माध्यम से सक्रिय किया गया था। प्रोफाइल ए और बी को उसी पीओएम में वांछित व्यवहार का उत्पादन किया। –