由于javadoc错误无法构建maven项目?

时间:2014-05-08 13:16:32

标签: maven javadoc

有没有人在下面遇到过simlar maven错误?

由于下面的错误,我无法构建我的项目。在我开始编写代码之前,所有这些都工作得很好。

我甚至没有在下面定义的接口上工作,它似乎与javadoc有关吗?

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-javadoc-plugin:2.9.1:jar (attach-javadocs) on project jonney-project: MavenReportException: Error while creating archive:

[ERROR] Exit code: 1 - /Users/me/Work/myProject/library/src/main/java/com/me/someInterface.java:45: warning: no @return
[ERROR] public abstract boolean searchForDevce();
[ERROR] ^
[ERROR] /Users/me/Work/myProject/src/main/java/com/me/someInterfaceAgain.java:52: warning: no @return
[ERROR] public abstract boolean selectDevice(int pos);
[ERROR] ^

6 个答案:

答案 0 :(得分:70)

我猜你已经切换到Java 8.在这个版本中,Javadoc对要求更加严格。

您有三种选择:

  1. 修复错误
  2. 禁用严格检查
  3. 在构建时跳过Javadoc
  4. 要禁用严格检查,请将其添加到您的pom.xml

    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <configuration>
          <additionalparam>-Xdoclint:none</additionalparam>
        </configuration>
      </plugin>
    </plugins>
    

    在构建时跳过Javadoc,请使用:

    mvn -Dmaven.javadoc.skip=true verify
    

    Further Information

答案 1 :(得分:10)

使用 maven-javadoc-plugin 版本3.0.0 <additionalparam/>已被<additionalOptions/>取代。要将错误减少到警告,这个pom.xml条目对我有用:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
            <executions>
                <execution>
                    <id>attach-javadocs</id>
                    <goals>
                        <goal>jar</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <additionalOptions>
                    <additionalOption>-Xdoclint:none</additionalOption>
                </additionalOptions>
            </configuration>
        </plugin>
    </plugins>
</build>

答案 2 :(得分:7)

有关通过BUG搜索的错误的更新: 如果项目使用源/目标8,则在javadoc配置中添加8应该使该项目可在jdk {11,12,13}上构建:

import hvac

client = hvac.Client(url='https://127.0.0.1:8200',
                     token='xxxxxxxx',
                     cert=('server.crt',
                           'server.key'),
                     verify='ca.crt')

res = client.is_authenticated()
print("res:", res)

答案 3 :(得分:3)

只需使用属性标记更新您的pom.xml,如下所示。

<properties>
    <additionalparam>-Xdoclint:none</additionalparam>
</properties>

答案 4 :(得分:1)

使用3.2.0版时,上述选项似乎都不对我有用。相反,我注意到了failOnError选项。将此标签的值设置为false似乎可以解决问题,即使在出现javadoc错误的情况下,我的构建也可以成功进行。

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
            <version>${maven.javadoc.plugin.version}</version>
            <executions>
                <execution>
                    <id>attach-javadocs</id>
                    <goals>
                        <goal>jar</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <failOnError>false</failOnError>
            </configuration>
        </plugin>

这将阻止为Maven项目生成Javadoc jar。就我而言,这是可以的,因为我只想在进行中的开发过程中毫无错误地进行构建。其他选项可能仍然允许在出现错误时生成javadoc jar。

答案 5 :(得分:0)

如@turbanoff自3.0.0版以来所述,maven-javadoc-plugin配置设置<additionalparam>已由<additionalOptions>取代

因此pom.xml中的插件定义如下所示:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <version>3.2.0</version>
    <configuration>
        <additionalOptions>-Xdoclint:none</additionalOptions>
    </configuration>
</plugin>

此配置仍将生成警告。因此,您可以而且应该在代码中修复它们。但是现在它将不再破坏Maven的构建。