我们知道发布maven项目比较简单,执行maven-release-plugin
插件就可以了。
最近在调用mvn release:prepare
做发布准备时,maven报错了。报错内容太长就不贴出来了,简单说,就是在执行javadoc插件生成javadoc文档时,因为javadoc编译时有错误,造成release:prepare无法继续执行下去而失败。
遇到这种情况,有如下几个解决办法。
修复javadoc错误
这个办法就是老老实实根据javadoc输出的错误信息,一个一个解决java源码注释中的错误(警告可以忽略)。
忽略javadoc错误
如下在pom.xml中指定maven.javadoc.failOnError
为false
,也就是指定当发生javadoc编译错误时继续执行。
<properties>
<maven.javadoc.failOnError>false</maven.javadoc.failOnError>
...
</properties>
也可以如下在命令行指定该参数
mvn -Darguments="-Dmaven.javadoc.failOnError=false"
不生成javadoc
如果你认为发行版本中不需要同时发布javadoc,也可以通过设置maven.javadoc.skip
为true
指定在release时跳过生成javadoc这一步
<properties>
<maven.javadoc.skip>true</maven.javadoc.skip>
...
</properties>
关于此问题进一步的分析原因塈彻底解决问题,参见下一篇博客 《maven:java8下当javadoc有编译错误时无法生成.jar包的问题》
参考资料
maven-javadoc-plugin breaks mvn release:perform
maven release useReleaseProfile