Java / Maven编译失败(找不到合适的构造函数)

时间:2013-04-01 13:03:06

标签: java maven travis-ci

我遇到了一个奇怪的问题..
我正在开发一个使用ProcessBuilder Class的项目 在我的本地机器上(经过测试的Java6和Java7)我可以轻松mvn clean install& mvn assembly:single项目没有任何错误。现在我想让项目由travis-ci构建并遇到以下错误

  

错误:找不到适合ProcessBuilder(String)的构造函数

full log file here.. 但是Javadoc for ProcessBuilder告诉我那个构造函数 我的.travis.yml看起来像这样

  

语言:java

     

JDK:
     - oraclejdk7
     - openjdk6
     - openjdk7

     

after_success:
     - mvn程序集:单个

为什么构建在travis-ci上失败的任何想法?

谢谢,F481

修改
本地我也在使用Maven 3,就像travis-ci一样(travis doc:“Travis Java builder将使用Maven 3来构建它。”) 我的pom.xml:https://github.com/MultiServerControl/MineControl/blob/master/pom.xml
而第一个错误的java代码:this.processBuilder = new ProcessBuilder("");
完整课程可用here

EDIT2: 我为maven编译指定了源版本和目标版本,如下所示:

<plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-compiler-plugin</artifactId>
      <version>3.0</version>
      <configuration>
          <source>1.7</source>
          <target>1.7</target>
      </configuration>
</plugin>

现在构建适用于JDK7:https://travis-ci.org/MultiServerControl/MineControl/jobs/5963859

但我不明白这种行为的原因......我也想为JDK 5,6构建项目 我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

我指定了maven编译器插件的版本以及编译的源和目标版本,如下所示:

<plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-compiler-plugin</artifactId>
      <version>3.0</version>
      <configuration>
          <source>1.5</source>
          <target>1.5</target>
      </configuration>
</plugin>

现在构建工作正常!非常感谢 NilsH 让我朝着正确的方向前进。