Maven 中的代码生成

2022-09-04 22:14:12

我想从接口自动生成一些java类。我的第一个想法是编写一个代码生成器,并将其集成为maven插件。

我正在考虑创建一个具有代码目标的maven插件,该目标在构建过程中调用。

那么如果我选择这条路线,如何为插件提供要处理的接口呢?生成的文件应该放在哪里?

是否有任何现有的插件可以配置为生成默认类实现?


答案 1

源代码应该放在 {project.build.directory}/generated-sources/[plugin-id]/

大多数插件采用通过pom中的插件配置部分传递的配置。您也可以使用默认值,也可以使用注释和类路径扫描。

maven-jspc-plugin这样的插件会生成代码,你可以看看。“Better Builds With Maven”电子书还包含一个关于编写插件的相当全面的章节。


答案 2

也许看看XDoclet Maven插件 - XDoclet通常用于从类中的doclet样式标记生成源代码(例如,从实现中自动生成MBean接口),这听起来类似于你正在做的事情。


推荐