2009-04-19 84 views
10

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

我正在考虑创建一个maven插件,并在构建过程中调用codegen目标。

所以如果我选择这条路线,我该如何提供带有待处理接口的插件?生成的文件应该放在哪里?

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

回答

6

源头应该在{project.build.directory} /生成来源/ [插件-ID]/

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

maven-jspc-plugin这样的插件会生成代码,您可以查看一下。 “使用Maven更好地构建”电子书还包含编写插件的相当全面的章节。

+0

这是正常的,他们进入生成源的子目录。我发现NetBeans支持假设了这一点。 – 2009-04-20 10:08:44

+2

更完全的,他们应该进入{project.build.directory}/generated-sources/ rtenhove 2009-09-17 13:33:51

3

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

1

我已经使用APT-Jelly从注释的java成功生成java源代码。你可能想看看它。