2012-04-25 7 views
13

jOOQ के साथ, मैं jOOQ code generator with Maven और custom generator strategy का उपयोग करके गठबंधन करना चाहता हूं। ऐसा लगता है कि यह इस तरह किया जा सकता है (अप्रासंगिक भागों को छोड़कर):jOOQ कोड-जेनरेटर और मेवेन के साथ कस्टम रणनीति का उपयोग कैसे करें?

<plugin> 
    <groupId>org.jooq</groupId> 
    <artifactId>jooq-codegen-maven</artifactId> 
    <version>2.2.2</version> 

    <!-- The plugin should hook into the generate goal --> 
    <executions> 
    <execution> 
     <goals> 
     <goal>generate</goal> 
     </goals> 
    </execution> 
    </executions> 

    <configuration> 
    <generator> 
     <name>org.jooq.util.DefaultGenerator</name> 
     <!-- But the custom strategy is not yet compiled --> 
     <strategy> 
     <name>com.example.MyStrategy</name> 
     </strategy> 
    </generator> 
    </configuration> 
</plugin> 

उपरोक्त कॉन्फ़िगरेशन समस्या को दर्शाता है। jOOQ का कोड जनरेटर मैवेन लाइफसाइकिल के उत्पन्न लक्ष्य में हुक करता है, जो जीवन चक्र के संकलन लक्ष्य से पहले होता है। कोड जनरेशन के लिए, हालांकि, इसे एक पूर्व-संकलित कस्टम रणनीति वर्ग की आवश्यकता है, या मुझे ClassNotFoundException मिलेगा। इसे मेवेन के साथ कैसे हल किया जा सकता है? क्या मैं generate लक्ष्य निष्पादित करने से पहले एक एकल कक्षा संकलित कर सकता हूं?

उत्तर

7

परियोजना को दो मॉड्यूल में विभाजित करने का एक बेहतर समाधान है। एक में रणनीति और बाकी बाकी शामिल हैं।

मॉड्यूल का उपयोग करके आप एक स्वतंत्र कदम में रणनीति संकलन और फिर प्लगइन में है कि मॉड्यूल का उपयोग कर सकते हैं:

<plugin> 
    <groupId>org.jooq</groupId> 
    <artifactId>jooq-codegen-maven</artifactId> 
    <version>2.2.2</version> 

    ...your config goes here... 

    <dependencies> 
    list your strategy module here 
    </dependencies> 
</plugin> 
संबंधित मुद्दे