Eer*_*nen 32 java code-generation maven lombok maven-javadoc-plugin
我有一个用Maven构建的多模块java项目,我想用它来生成javadocs javadoc:aggregate.项目结构如下:
parent
??lomboklib
??other
Run Code Online (Sandbox Code Playgroud)
我也使用Project Lombok在项目中生成一些方法.通过首先使用Lombok maven插件运行delombok,我已成功将其配置为使用单个模块.对于单个模块(lomboklib),这将生成源代码
target/generated-sources/delombok
Run Code Online (Sandbox Code Playgroud)
然后由maven-javadoc-plugin和javadoc工具处理.这最初是在这个问题中解决的.
如何配置javadoc:aggregate报告以使用生成的源?
我用Github中的所有模块定义提出了问题的沙箱.理想情况下,我应该能够跑步
mvn clean compile javadoc:aggregate
Run Code Online (Sandbox Code Playgroud)
在父项目中,让整个项目编译并获取整个项目的javadocs.
我创建了一个解决方法构建配置,它将从生成的源创建聚合的 javadoc,尽管调用序列有两个步骤:
mvn package
mvn -N pre-site
Run Code Online (Sandbox Code Playgroud)
构建配置现已发布在Github上。当前版本仅支持深度为一的项目树,但当然可以修改。它的工作原理是收集父target目录下的依赖项,然后运行包含的Ant脚本。
最后,如果在 Jenkins 下运行,则可以通过执行 shellmvn -N pre-site post 步骤在同一作业中调用。在我们的 Jenkins 版本中发布 javadoc 需要使用构建后操作“使用另一个项目的发布者”。