के लिए एक डिफ़ॉल्ट मोजो को परिभाषित करने के लिए मैंने एक प्लगइन लिखा है जो लक्ष्य/जेनरेट-स्रोत/में एक फ़ाइल उत्पन्न करता है। इस प्लगइन में केवल एक मोोजो है। इस मोजो निम्नलिखित के साथ घोषित किया जाता है:मैवेन प्लगइन
/**
* @goal convertsql
* @phase generate-sources
* @requiresProject
*/
public class ConverterMojo extends AbstractMojo {
परियोजना में, मैं प्लगइन का उपयोग करना चाहते हैं लेकिन अगर मैं फांसी टैग निर्दिष्ट नहीं करते हैं यह काम नहीं करता:
<executions>
<execution>
<id>convert</id>
<goals><goal>convertsql</goal></goals>
<phase>generate-sources</phase>
</execution>
</executions>
मैं करूंगा इस तरह प्लगइन को कॉन्फ़िगर करने की तरह:
<plugin>
<groupId>com.my.plugins</groupId>
<artifactId>sqlconverter</artifactId>
<version>1.0-SNAPSHOT</version>
<configuration>
<sourceFile>src/main/resources/sql/schema_oracle.sql</sourceFile>
</configuration>
</plugin>
क्या मेरे प्लगइन के लिए डिफ़ॉल्ट मोजो निर्दिष्ट करना संभव है? डिफ़ॉल्ट लक्ष्य और चरण मोोजो में परिभाषित किया गया है ... मेरा मतलब है, जार प्लगइन का उपयोग करते समय, मुझे उस लक्ष्य को बताना नहीं है जिसे मैं निष्पादित करना चाहता हूं, किस चरण में ... यह स्वचालित है।
धन्यवाद!
के लिए से Maven बुक 11.6.3. Overriding the Default Lifecycle देखें कैसे आप अपने प्लगइन के लिए की तरह लग रहे पोम करता है? – khmarbaise