J'ai une application Java que j'emballe en tant que RPM. Idéalement, je voudrais spécifier Java comme une dépendance. Je dois m'installer dans les environnements Fedora et RHEL. Le problème est RHEL Java est appelé 'java', tandis que Fedora ne fournit pas la distribution d'Oracle/Sun, laissant un téléchargement manuel à partir du site Web d'Oracle. La distribution d'oracles de Java est appelée 'jre' ou 'jdk' selon le paquet que vous sélectionnez.Spécification d'alternatives dans les dépendances RPM
Normalement dans un fichier SPEC RPM Je voudrais écrire:
Depends: java> = 1,6
Mais depuis le RHEL fournit 'java' et Fedora via Sun/Oracle fournit 'jre' ou « jdk '(et je ne peux pas utiliser OpenJDK), je suis un peu lié. Documentation jusqu'à présent n'a pas montré un moyen de faire 'java> = 1.6 || jre> = 1,6 || jdk> = 1.6 'etc. Parce que les paquets Java ne sont pas sous mon contrôle, je ne peux pas changer l'un ou l'autre pour spécifier un' Provides: Java '.
À l'heure actuelle, je ne vois que deux options:
- Omettre Java en tant que dépendance
- Créer un RPM pour Fedora, un pour RHEL
Je ne suis pas désireux de chaque option. Existe-t-il d'autres moyens d'atteindre la dépendance Java lorsque les fournisseurs ont tous des noms différents?
Éditer: Une troisième option - créer mon propre paquet virtuel Java pour Fedora qui dépend du RPM JDK de Sun.