J'ai un Centos 7 VM. J'ai récemment installé 1.8.0_251 code> jdk version. La version JDK précédente était 1.8.0_172 code>. J'ai inséré les lignes suivantes à un Custom.sh code> script dans /etc/profile.d / code> pour affecter la nouvelle version Java Version à l'échelle. [igwstuser@integrator1 ~]$ echo $JAVA_HOME
/usr/java/jdk1.8.0_172-amd64/
[igwstuser@integrator1 ~]$ sudo su
[root@integrator1 igwstuser]# echo $JAVA_HOME
/usr/java/jdk1.8.0_251-amd64/
3 Réponses :
Faites cela simplement et vérifiez quelle version Java il pointe avec Si vous voyez une autre version Java, utilisez l'éditeur de texte défini comme valeur correcte pour Après avoir apporté les modifications nécessaires, n'oubliez pas de Cat ~ / .BASHRC CODE> P>
export java_home = code> p> p>
Source CODE> BASHRC pour apporter des modifications disponibles avec Source ~ / .BASHRC CODE> P> P>
No Java_Home défini à ~ / .bashrc code>. Java_Home fonctionne bien pour l'utilisateur root
Il suffit de définir Java_Home dans Bashrc et Source Bashrc, cela fonctionnera bien
Oui c'est vrai. Mais je veux comprendre où provient cette ancienne version
exécuter env code> pour afficher toutes vos variables env, essayez de déterminer où avez-vous défini autre Java_Home
Cochez ce fichier - /etc/java/java.conf Il devrait avoir quelque chose comme ci-dessous la ligne de ligne de toutes les installations JVM_ROOT = / USR / LIB / JVM permettra d'identifier toutes les versions Java installées. Même "env" peut montrer aucun résultat et echo $ java_home peut retourner le résultat vide, mais toujours Java fonctionnera bien (peut être dû à la configuration dans ce fichier). De plus, je pense que "alternatives --config java" peut choisir la disponibilité de Java à partir de ce fichier de configuration. Donc, je pense que votre ancienne version de Java vient quelque part d'ici
/etc/profile.d code> est destiné aux utilisateurs globaux, pour Linux env, ce fichier exécute d'abord, puis ~ / .bash_rc et ~ / .bash_profile pour les utilisateurs individuels.
Vous devez vérifier cet utilisateur intégrateur1 code> 'S ~ / .bashrc code> et ~ / .bash_profile code>, existe-t-il un ensemble Java_Home. Si c'est le cas, changez-le à votre dernier Java_Home. Ensuite, source code> it. P>
No java_home défini à igwstuser code> 's .bstrucc code> et .bash_profile code>
Vous pouvez essayer d'ajouter le nouveau java_home == "/ usr / java / jdk1.8.0_251-AMD64 /" code> dans ~ .bstrucc, puis le source. Cela devrait fonctionner.
Oui c'est vrai. Mais je veux comprendre où provient cette ancienne version
autorisations sur /etc/profile.d/custom.sh doit être ouverte afin que tous les utilisateurs puissent lire le fichier pendant la connexion. Seule la racine peut la lire si seule la racine obtient le réglage. p>
Vous êtes-vous sûr de vous déconnecter et de vous connecter à nouveau après l'ajout
personnalisé.sh code>? Avez-vous vérifiéigwstuser code> 's.bstrucc code> et.bash_profile code> pour une ligne qui remplace?@ThaTherGuyy: Oui, je me suis déconnecté et connecté. Oui coché
igwstuser code> 'S.bstructrc code> et.bash_profile code>. Pas de lignes primordialesQuelles sont les autorisations sur /etc/profile.d/custom.sh? Qui peut le lire?
@jsbillings: Vous êtes un génie. Je n'avais pas défini l'accès lu à d'autres utilisateurs dans
personnalisé.sh code>. Merci.@jsbillings: veuillez poster cela comme une réponse afin que je puisse accepter