J'avais Open JDK 1.7 sur CentOS; j'ai installé Oracle Java tr / min; Oracle Java ne semble pas exister
J'ai commencé avec CentOS et OpenJDK 1.7
# java -version
java version "1.7.0_25"
OpenJDK Runtime Environment (rhel-2.3.10.4.el6_4-x86_64)
OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)
Afin d'exécuter une application spécifique, je veux l'utilisation d'Oracle Java 1.6, fourni à partir d'un RPM.
J'ai copié l'Oracle binaire à un nouveau répertoire:
# pwd
/oracleJava/jdk-6u45-linux-x64-rpm
J'ai extrait le binaire et il m'a donné les fichiers suivants:
# ls
jdk-6u45-linux-amd64.rpm
sun-javadb-core-10.6.2-1.1.i386.rpm sun-javadb-javadoc-10.6.2-1.1.i386.rpm
sun-javadb-client-10.6.2-1.1.i386.rpm sun-javadb-demo-10.6.2-1.1.i386.rpm
sun-javadb-common-10.6.2-1.1.i386.rpm sun-javadb-docs-10.6.2-1.1.i386.rpm
J'ai installé le RPM et le rpm utilitaire estime qu'il est installé correctement:
rpm-q jdk
jdk-1.6.0_45-fcs.x86_64
# rpm -Uvh ./*.rpm
Preparing... ########################################### [100%]
package jdk-2000:1.6.0_45-fcs.x86_64 is already installed
# rpm -Uvh sun-javadb-*.rpm
[I omit the feedback because it generates a formatting error]
#
Cependant, la version de Java montre juste 1.7
# java -version
java version "1.7.0_25"
OpenJDK Environnement d'Exécution (rhel-2.3.10.4.el6_4-x86_64)
OpenJDK 64-Bit Server VM (build 23.7-b01, en mode mixte)
En d'autres termes, je m'attendais à l'Oracle des fichiers de me donner quelques nouvelles /java répertoire quelque part, avec un nouveau fichier exécutable java qui doit retourner une réponse différente pour "java -version"
J'ai besoin de ce nouveau répertoire afin que je puisse set JAVA_HOME et utiliser la version 1.6 de Java.
Utiles suggestions seraient grandement appréciés. Merci à l'avance.
/usr/java/jdk1.6.0_45/bin
OriginalL'auteur dataquerent | 2013-10-22
Vous devez vous connecter pour publier un commentaire.
Le problème, c'est que l'Oracle du Rpm sont (volontairement OMI!) l'ignorance des "solutions de rechange" du système.
Au lieu de cela, ils ont installer des trucs dans un non-standard (/usr/java) et puis attendre que l'utilisateur /administrateur système de gâchis avec la variable de CHEMIN d'accès ... à la main.
C'est une nuisance!
Donc, ce qui a probablement arrivé dans votre cas, c'est que votre JDK /JRE a été installé dans un sous-répertoire de /usr/java ... mais puisque vous n'avez pas ajouté pertinentes
bin
sous-répertoire à l'avant de votrePATH
vous êtes toujours à ramasser les OpenJDK des outils parjava
le nom de la commande.Vous pouvez résoudre ce problème après le fait à l'aide de "solutions de rechange" pour configurer, puis sélectionnez les commandes Oracle. Mais c'est salissant, surtout si vous voulez le JDK outils ainsi. (Il y en a beaucoup!)
Si vous utilisez Chef, une autre approche est d'utiliser la "java" livre de cuisine pour faire l'installation.
OriginalL'auteur Stephen C
L'Oracle JDK Rpm sont horribles.
Afin de rapidement remédier à votre problème, vous pouvez exécuter les opérations suivantes:
Elle vous inscrire et préfèrent l'Oracle java installation comme une alternative. OpenJDK a poids 16000; ici nous inscrire avec 20000. Une fois que vous avez exécuté cette commande, vous pouvez basculer entre les versions de java à l'aide de la (déjà mentionné) alternatives --config java commande.
Que pour moins d'un correctif rapide vous pouvez utiliser virtual package java. Il est tout à fait peut-être pas parfait (je suis ouvert pour des améliorations 😉 ), mais il Fournit java (faire mon apache-tomcat paquet heureux) et enregistre avec le système des alternatives. Ce paquet virtuel dépend simplement de jdk...vous pouvez le trouver ici: https://github.com/keystep/virtual-java-rpm
Vous êtes les bienvenus! Les solutions de commande devrait vous donner ce dont vous avez besoin. Juste pour être clair: La quasi-package java est juste un de métadonnées ("virtuel") - il ne modifie pas le comportement de l'Oracle TR / min, ajoute juste quelques bits manquants pour une meilleure intégration du système 😉 d'ailleurs, en ce qui concerne la accepté de répondre: je n'ai pas le temps de vérifier, mais j'étais sûr que l'Oracle RPM met en place le /usr/bin/java lien mais comme il n'est pas enregistré avec solutions de rechange il dépend de l'ordre d'installation. Si vous installez le Oracle JDk et ensuite installer/mettre à jour OpenJDK, le lien sera remplacé.
OriginalL'auteur bryn
Exécutez la commande suivante pour voir si votre JVM est mise sur la liste.
sudo update-alternatives --config java
Si votre JVM est listé sélectionner.
/usr/java/jdk1.6.0_45/bin
juste pour obtenir l'application en cours pour faire ce que le vendeur attend.OriginalL'auteur learningloop
Veuillez vérifier si votre JAVA_HOME points de JDK 6 à l'aide de l'écho
$JAVA_HOME
. Afin de changer votreJAVA_VERSION
à la version 6 de Java, vous devez pointer vers le KIT de développement Java 6. Vous devez également ajouter le répertoire bin de l'$PATH
variable. Veuillez vous assurer que JDK6 bin vient dans le $PATH avant les autres bin du JDK,le cas échéant. Vous pouvez vérifier la version de Java dans l'environnement par la commandejava -version
.L'autre réponse par learningloop est très parfait pour basculer entre les différentes Java configurationsVous êtes les bienvenus
OriginalL'auteur Keerthivasan
Essayez la méthode suivante
J'ai eu le même problème et a obtenu une solution par le biais de cette méthode
OriginalL'auteur Matrix