我需要生成一些Java源代碼,然後由Maven編譯。問題是生成這些源的遺留代碼是用Java編寫的。使用該解決方案(變通)是有:使用Maven使用Ant腳本生成Java源代碼
- 項目中與生成的Java源代碼 依賴於項目A和Maven中調用antrun在項目執行中的類
- 項目B A
當你建立B項目,會發生什麼是Maven將:
- 編譯項目A(代碼生成源),並做其他項目中的pom.xml的告訴它做的事。
- antrun這些類(由項目B的pom.xml中的要求) - 從而源將得到產生並添加到項目B
- 編譯項目乙源
這是因爲Antrun需要在項目中的類A在執行時已經被編譯。 然而,這是一個醜陋的解決方案,項目A和B實際上應該只是一個項目。 我知道我應該使用:
<phase>generate-sources</phase>
,我看到使用Groovy的例子(http://blog.retep.org/2009/11/07/using-groovy-to-generate-java-sources- ),但我想知道是否有任何簡單的方法來做到這一點,同時在一個項目中擁有所有內容,而不必將代碼生成從Java更改爲Groovy或其他。
謝謝。
我更喜歡將這兩個項目放在不同的maven模塊中。 –