У меня возникла странная проблема.
Я работаю над проектом, использующим ProcessBuilder Class.
На моей локальной машине (Java6 и Java7 протестировано) я могу легко & mvn assembly:single
Проект без каких-либо ошибок. Теперь я хочу, чтобы строить проект по travis-ci и побежал к следующей ошибкеОшибка компиляции Java/Maven (не найдено подходящего конструктора)
error: no suitable constructor found for ProcessBuilder(String)
full log file here.. но Javadoc for ProcessBuilder показать мне этот конструктор.
Мой .travis.yml выглядит следующим образом
language: java
jdk:
- oraclejdk7
- openjdk6
- openjdk7after_success:
- mvn assembly:single
Любые идеи, почему строить терпит неудачу на Travis-CI?
Спасибо, F481
Edit:
Локально Я использую Maven 3, как Трэвис-CI тоже (Travis документ: "Travis Java строитель будет использовать Maven 3, чтобы построить его") Мои pom.xml: https://github.com/MultiServerControl/MineControl/blob/master/pom.xml
И ява код первой ошибки: 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.
Как я могу это сделать?
Возможно, это ошибка компилятора openjdk. И он не может применять String к «public ProcessBuilder (String ... command)» constructor .. – Taky
Хм .. если да, то почему orqle jdk build тоже не работает на travis-ci? : P – F481
@ F481 Какая версия maven вы работаете локально? А какая версия на travis? Можете ли вы показать 'pom.xml' и код, вызывающий' ProcessBuilder'? – NilsH