maven - intellij maven javadoc插件JAVA_HOME未设置错误
问题描述
我在 Intellij 中构建的应用程序 pom.xml 中添加了 maven 源代码和 javadoc 插件,以便将源代码和 javadoc 与 jar 文件一起部署到 nexus。但 Javadoc 插件无法运行,出现此错误
Failed to execute goal org.apache.maven.plugins:maven-javadoc-plugin:3.2.0:jar (attach-javadocs) on project ced-spark-spring-components: MavenReportException: Error while generating Javadoc: Unable to find javadoc command: The environment variable JAVA_HOME is not correctly set.
我无法在我的笔记本电脑上设置 JAVA_HOME(无法解释的公司政策),所以我专注于在 intellij 和 maven 中设置它。经过大量的捣乱后,我通过添加 pom.xml 添加
<javadocExecutable>${java.home}/bin/javadoc</javadocExecutable>
到插件的配置并设置此属性来使其工作
<java.home>c:/Program Files/Java/jdk1.8.0_181</java.home>
这工作但并不令人愉快,最终偶然发现了 intellij maven jdk 设置
File | Settings | Build, Execution, Deployment | Build Tools | Maven | Runner
,该设置默认为内部 intellij jdk 并且没有 javadoc。我将其更改为使用完整的 jdk 和 intellij 外部的 javadoc。
然后 javadoc 插件由于 javadoc 错误而导致构建失败,我可以通过将 doclint:none 添加到 pom.xml 中的插件 congig 来配置关闭
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<additionalOptions>-Xdoclint:none</additionalOptions>
</configuration>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
解决方案
推荐阅读
- python - Sum of objects' prices in Django template
- javascript - 参考文件的用户输入在 Apache 服务器上不起作用
- reactjs - 如何在 react-admin 中只覆盖一个子文件?
- css - 如何使用 flex 拥有比例列?
- angular6 - 未找到模块:错误:无法解析 selenium-webdriver 中的“http”
- pandas - 数据框键错误列不在索引中
- matlab - 我们如何减小 HOG 描述符的大小来改变单元格和块的大小
- ssl - 无法在 Apache 2.4.18 中禁用 TLSv1/TLSv1.1
- circuit-sdk - 如何将大量参与者添加到会议中?
- java - 使用类中的方法而不创建对象(非静态)