我遇到了一个奇怪的问题..
我正在开发一个使用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
- openjdk7after_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构建项目 我怎么能这样做?
答案 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 让我朝着正确的方向前进。