我需要在Eclipse项目中拥有一个config.xml
文件,并使用该文件作为Maven目标的输入。该目标将使用config.xml
在generated/
目录下(也在我的项目中)自动生成代码(XML和Java)。
:
MyProject/
src/main/config
config.xml
src/main/java
(All my Java source)
(rest of my project)
generated
source/
java/
xml/
因此Maven目标将在任何compile
或build
相关目标之前启动,并在需要时使用config.xml
填充generated/source/*
目录。然后,这些源将可用于后续目标的处理。
这样的工具存在吗?我能找到的最接近的是XDoclet,但我有两个问题:
- 我不知道它有多灵活;也就是说,在多大程度上,我可以把我自己的配置"东西"放在config.xml中,给XDoclet一个XSD,让它自己运行;下面是
- 似乎找不到任何Maven目标/插件
关于第一个项目/问题,我的意思是:理想情况下,我想把任何类型的XML放入config.xml
中。因此,这个理想的工具应该只需要一个XML的XSD,以及一些XSLT(或类似的)来确定如何从配置文件中的XML自动生成代码。
我不确定XDoclet是否允许这种灵活性。
有什么想法或建议吗?一定有像这样的存在!提前感谢,
XDoclet非常灵活,但它的目的是处理java源并从中生成一些东西。如果从一些xml开始,最好的选择是XSLT转换——xdoclet列表不适合这样做。
我使用antrun和与Ant一起工作的xslt任务来生成其他代码工件。然后使用build-helper插件将生成的文件夹添加到源文件夹列表中。这将为您提供最灵活的编写代码的基础,并且还可以使用m2e(尽管您需要自己运行maven生成源代码,因为anrun不会自动运行,因为还没有连接器)。