疲累不堪的我一定不能在写完之前倒下。
Maven生成站点大家都会。mvn site,mvn site-deploy。不管是单模块,多模块一切OK。可是如果不凑巧,你如果为一个子项目专门 配置了 site.xml ,
当你在父项目目录下运行mvn site-deploy时,很遗憾,他会一点作用都没有,使用的是 父项目 site.xml
当你进入子项目目录,运行 mvn site-deploy,一切OK。
于是这五个小时我被折磨的蛋疼,学习的大量的Maven知识,实验的数百次(运行了一下history,发现其实只有73次)。于是倒下了。
在昏死中,我想起来了,site.xml支持继承,而如果要编写一个支持继承的插件,最起码的要求就是在运行父子项目的时候必须运行的是同一个插件。那么 解决方案如下:
在父项目的 pluginManagement 中明确 使用 maven-site-plugin。而在每一个项目中都明确使用 maven-site-plugin
代码如下:父项目pom.xml:
org.apache.maven.plugins
maven-site-plugin
2.0
org.apache.maven.plugins
maven-site-plugin
子项目pom.xml:
org.apache.maven.plugins
maven-site-plugin
解决之,终得眠