Maven无法找到javadoc命令

时间:2018-03-25 05:19:56

标签: java maven javadoc

我正在尝试运行maven verify命令,但收到此错误。

MavenReportException: Error while generating Javadoc: Unable to find javadoc command: The environment variable JAVA_HOME is not correctly set.

Maven无法找到javadoc命令,因此无法创建文档。

有趣的是我可以运行mvn javadoc:jar命令并且它成功运行。除了我的JAVA_HOME指向正确的位置。

$ echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk-9.0.1.jdk/Contents/Home

这是来自pom文件。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <version>3.0.0-M1</version>
    <configuration>
        <additionalparam>-Xdoclint:none</additionalparam>
    </configuration>
    <executions>
        <execution>
              <id>attach-javadoc</id>
              <phase>verify</phase>
              <goals>
                 <goal>jar</goal>
              </goals>
        </execution>
    </executions>
</plugin>

请不要告诉我这是问题 Unable to find javadoc command - maven的副本。我知道问题是一样的,但我们的情况不同,我的JAVA_HOME指向正确的位置。所以这个解决方案对我不起作用。

2 个答案:

答案 0 :(得分:4)

我在java 9.0.4和macOs中遇到了同样的问题,在javadoc插件中添加以下配置为我解决了这个问题

  <configuration>
     .....
     <javadocExecutable>${java.home}/bin/javadoc</javadocExecutable>
  </configuration>

答案 1 :(得分:0)

对于JDK版本1.8、9、11、12:

<build>
    <plugins>
        <!-- ... -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
            <configuration>
                <javadocExecutable>${java.home}/bin/javadoc</javadocExecutable>
            </configuration>
        </plugin>
        <!-- ... -->
    </plugins>
</build>