2017-11-22 5 views
0

ich habe eine sehr komplexe umgebung in meinem jenkins build und deployment. Es gibt vier Arten von Systemen: Windows (für die jboss Java-Umgebung), aix (für den xlc-Compiler), linux (für die websphere jee-Anwendung), mac (für die ios-Entwicklung). Verschiedene Systeme besitzen ihre jdk, die kleinste ist die JDK 1.6. Für das AIX-IBM-JDK (mit dem DES-SDK-Problem), also brauche ich die jenkins 2.32.1+, aber meine Umgebung hat das JDK 1.6, also ist der JNLP-Slave falsch. Aber das jenkins sklave jar braucht das JDK 1.7+, also denke ich, dass ich das sklave jar selbst für den jdk 1.6 kompilieren kann.jenkins sklave run in jdk 1.6

Wie kann ich dieses Problem lösen? Ich möchte nur das IBM JDK und das jdk 1.6 unterstützen. Oder es gibt den Quellcode für das slave.jar, ich kompiliere nur das ganze für den jdk 1.6.

Antwort

1

Sie können Builds auf einer 1.6-Version von Java weiterhin unterstützen, während Sie den Slave unter 1.7 ausführen. Fügen Sie in Ihrer Jenkins-Konfiguration die entsprechenden 1.6-Tools hinzu, aber stellen Sie sicher, dass Sie Ihre Datei "slave.jar" von einer kompatiblen Java-Version ausführen.

+0

verweisen kann. Meine Slave-Maschine ist das JDK 1.6. Aber die jenkins slave.jar unterstützt nur die 1.6. Wie kann ich dieses Problem lösen? – fartpig

0

In Sie ausführen Shell nur definieren JAVA_HOME =. Auf diese Weise können Sie jdk6 für die Kompilierung ohne Konflikte mit Jnlp verwenden, die auf jdk7