在 travis-ci 上使用 Maven 构建:javadoc 插件不会失败

Building with Maven on travis-ci: javadoc plugin won't fail

我正在试用 Travis-CI 构建一个最近发布的开源 Java 项目。这是我的 .travis.yml 文件:

language: java
script: mvn clean install -Dmaven.javadoc.skip=false

我尝试了最后一个标志,因为我在文档中读到该标志默认为 true,而且我确实在 travis-ci:

的构建日志中看到了它
$ mvn install -DskipTests=true -Dmaven.javadoc.skip=true -B -V

但是,当日志中的下一行是 运行 时,构建成功:

$ mvn clean install -Dmaven.javadoc.skip=false

...

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------

我知道这是不正确的,因为在我的个人机器上构建失败(由于 javadoc 构建错误),运行ning maven 3.2.5,并且在 bamboo 服务器上构建时构建也失败了相同的参数,即使只是 mvn clean install:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-javadoc-plugin:2.9.1:jar (attach-javadocs) on project luces: MavenReportException: Error while creating archive:
[ERROR] Exit code: 1 - <filepath>: error: tag not allowed here: <li>
[ERROR] * <li>0 for int / long</li>
[ERROR] ^

这是使用 javadoc 插件的 Pom 的相关部分:

  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <version>2.9.1</version>
    <executions>
      <execution>
        <id>attach-javadocs</id>
        <goals>
          <goal>jar</goal>
        </goals>
      </execution>
    </executions>
  </plugin>

我查了一下,Travis-CI 说他们也在使用 Maven 3.2.x。这是 Travis 中的错误吗-CI?

我解决了这个问题。问题是我在失败的环境中是 运行 JDK8,默认情况下,travis-ci 在 JDK7 上是 运行。正如预期的那样,在 travis-ci 上将 jdk 设置为 oraclejdk8 会导致同样的失败。