我需要生成一些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模块中。 –