Несколько установок Java на одном и том же подчиненном устройстве Jenkins

Мне нужно иметь 2 версии Java на том же образе Docker:

  • Java 7 для разработчиков
  • Java 8 для запуска Дженкинс-раб

Поскольку мы используем тихое старое программное обеспечение, решение было:

RUN echo deb http://http.debian.net/debian jessie-backports main >> /etc/apt/sources.list && \
    apt-get update && \
    apt-get install -y -t jessie-backports openjdk-8-jdk && \
    update-alternatives --set java /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java && \
    apt-get clean

Я попытался удалить альтернативы обновления и просто изменить окружение Jenkins $PATH на подчиненном устройстве Jenkins на:

/usr/lib/jvm/java-1.8.0-openjdk-amd64/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/utilities/bin/

К сожалению, это по-прежнему сохранит Java 7 в качестве Java по умолчанию.

Альтернативой может быть сделать Java 8 по умолчанию с использованием альтернатив обновления и изменить версию Java для использования сборкой Maven в конвейере Jenkins.

  1. Каков наилучший способ использовать обе версии Java?
  2. Какой должна быть моя версия по умолчанию?
  3. Как настроить другую (сборку Maven или подчиненный Jenkins) для использования другой (не по умолчанию) версии Java?

0 ответов

Другие вопросы по тегам