Как мне настроить пакет RPM так, чтобы он требовал Java 8 или более поздней версии, чьи зависимости могут быть удовлетворены с помощью Java 11

У вас есть два варианта. Если версия вашего upstart (используйте команду initctl --version) не ниже 1.4, то добавьте следующие строки в файл testing.conf:

setuid deds
setgid deds

иначе измените строку exec на:

exec sudo -u deds python testing.py
0
06.03.2019, 15:33
1 ответ

На данный момент пакеты OpenJDK 11 в RHEL 7 и 8 не предоставляют java-headless, jre-headlessили какие-либо неверсированные пакеты Java. (Насколько я понимаю, причина в том, что OpenJDK 11 не гарантирует замену OpenJDK 8 с сохранением совместимости во всех случаях. )Это изменится, когда OpenJDK 11 станет системным JDK; вы можете попробовать отследить эту ошибку , чтобы получать уведомления об изменениях.

К сожалению, я не думаю, что в настоящее время есть способ разрешить пакету RPM зависеть от jre-headlessи установить его только с OpenJDK 11,без использования логических зависимостей (и RHEL 8, эффективно ). Типичным обходным решением было бы использование требования к файлу вместо требования к пакету, но java-8-openjdk-headlessи java-11-openjdk-headlessне предоставляют общий файл, на который вы можете положиться (, и я не думаю, что требования к файлам могут быть версионными. ).

Ваш запрос предполагает, что jre-headlessудовлетворяются пакетами OpenJDK 11, но это потому, что ранние -пакеты доступа ошибочно предоставили пакеты по умолчанию; так

yum whatprovides jre-headless

перечислены пакеты OpenJDK 8 и OpenJDK 11, но последние больше не устанавливаются.

3
28.01.2020, 02:30

Теги

Похожие вопросы