2015-04-14 5 views
12

Ist es möglich, die Nebenversion des JDK für Jobs anzugeben, die auf Travis ausgeführt werden? Ich habe ein JavaFX-Projekt, das fehlschlägt, weil JDK 1.8.0_31 verwendet wird, um den Build auszuführen, da das Projekt einige Klassen verwendet, die nur in Java 1.8.0_40 (speziell Alert und Spinner) ausgeliefert wurden.Können Sie eine kleinere jdk-Version für travis ci angeben

Derzeit meine .travis.yml Datei sieht aus wie folgt:

language: java 

jdk: 
    - oraclejdk8 

Hier ist ein Link auf die failed build nur für den Fall es nützlich ist.

+0

Ich bin vor dem gleichen Problem hinzuzufügen. Die einfachste Lösung, die ich sehe, ist das Akzeptieren der Endbenutzervereinbarung von Oracles, das Herunterladen der .tar.gz-Datei von ihrer Site, das Entpacken, das Festlegen von '$ JAVA_HOME' selbst und das Verwenden dieser Datei zum Erstellen. Ich versuche gerade, openjfx auf Ubuntu 12.04 laufen zu lassen (das ist, was travis benutzt). Bisher habe ich nur das openjdk gefunden, das openjfx-Paket scheint sich irgendwo anders zu befinden. Ich untersuche immer noch – michaeln

Antwort

5

Ich habe es endlich funktioniert. Diese Lösung wird nicht wirklich empfohlen, da es LinuxBrew verwendet, um Oracle JDK 8.0_40 zu installieren. Dank zrcoder on Github endete ich mit diesem .travis.yml up:

language: java 

branches: 
    only: 
    - master 

notifications: 
    email: false 

before_install: 
    - rm -rf ~/.linuxbrew 
    - yes | ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/linuxbrew/go/install)" 
    - export PATH="$HOME/.linuxbrew/bin:$PATH" 
    - export MANPATH="$HOME/.linuxbrew/share/man:$MANPATH" 
    - export INFOPATH="$HOME/.linuxbrew/share/info:$INFOPATH" 
    - brew install jdk 
    - export JAVA_HOME=/home/travis/.linuxbrew/Cellar/jdk/1.8.0-40 

Obwohl dies funktioniert, Travis-CI sollte im nächsten Monat aktualisiert werden, so dass Sie Ihre Konfiguration für kürzere Bauzeiten aktualisieren.

6

Diese Lösung auf apt addon Werke für mich zugrunde:

language: java 

jdk: 
    - oraclejdk8 

addons: 
    apt: 
    packages: 
     - oracle-java8-installer 

Im Ergebnis I java version "1.8.0_91" haben. Die Lösungsquelle ist here

+0

Dies wird die neueste verfügbare Version installieren, keine bestimmte Version. – ShabbyDoo

-1

Ich empfehle Travis CI Trusty build environment, die neuere Software als die Standardumgebung Precise verwendet. Es ist schneller und zuverlässiger als das neueste JDK bei jedem Build neu zu laden.

einfach die folgenden auf die oberste Ebene von .travis.yml

dist: trusty 
+0

Die spezifische Version des verwendeten JDK ändert sich mit der Zeit, wenn Travis CI seine Baselines aktualisiert – ShabbyDoo