首页 > 解决方案 > 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>

标签: mavenintellij-ideamaven-javadoc-plugin

解决方案


推荐阅读