应该在父级还是模块中生成文档?

时间:2018-11-20 13:29:10

标签: maven swagger javadoc

我对Maven还是很陌生,不确定各个组件的正确作用。

我一直在使用以下Maven项目结构来开发微服务:

service-parent
+-- rest-service-module
+-- frontend-js-module
+-- ...

使用Swagger完成服务定义,并将yaml文件存储在父项目中。

我现在想建立一个站点,其中应包括文档和报告。对我来说,将站点存储在父级中并从子级模块中收集javadocs,surefire报告等对我来说似乎合乎逻辑。例如,我在父pom中添加了swagger2markup-maven-plugin,以从招摇的yaml生成文档。

我遇到的第一个问题是父pom执行swagger2markup-maven-plugin并生成HTML。但是,它在子模块上执行相同的目标,并且失败。

看来我不了解导致这个问题的父母和孩子的角色。 Swagger文档仅需要生成一次,而无需从每个子模块生成,因此父级似乎是显而易见的选择。

那为什么对每个孩子执行父级插件呢?我该如何防止呢?我仍处于项目的早期阶段,因此可以在适当的情况下重新组织模块结构。

我已经尝试过https://stackoverflow.com/a/14653088/11249中建议的解决方案,但无法为我使用。

1 个答案:

答案 0 :(得分:0)

在生成文档时,可以使用-N开关不递归到子项目中。在服务父项pom.xml上执行以下命令(或您喜欢的其他命令)。 (只会对此pom执行)

mvn -N  swagger2markup:convertSwagger2markup
相关问题