Pourquoi je ne suis pas en mesure de voir les JAVA_HOME chemin sur mon MAC OS X 10.11?
Je suis en train de lancer une application JAVA sur mon MAC OS X 10.11 ( El Capitan).
J'ai utilisé ce lien pour définir la JAVA_HOME sur mon MAC OS X 10.11.
Je suis en mesure d'exécuter les commandes suivantes:
java -version
qui java
Cependant lorsque je vais dans le Terminal de l'app sur MAC et tapez echo $JAVA_HOME, je ne vois rien.
Pourquoi est-ce?
Est-ce à dire que mon JAVA_HOME n'est pas réglée correctement ?
OriginalL'auteur Andy | 2015-10-09
Vous devez vous connecter pour publier un commentaire.
Où le définir
Ok, tout d'abord, nous devons faire comprendre où pour définir
JAVA_HOME
.Simplifiée, vous pouvez le définir en deux fichiers: soit
~/.bashrc
ou~/bash_profile
. Par par défaut le premier est exécuté pour ce qui est appelé "interactif non-shells de login" tandis que le second est utilisé pour les "shells de login".Un "login shell", c'est exactement ce que vous attendez: une coque qui a commencé après la connexion via la ligne de commande. Une "interactif non-login shell" est un shell qui est lancé à partir d'une interface graphique, par exemple. Ainsi, selon que, nous devrions mettre notre instruction d'exportation dans
~/.bashrc
.Côté remarque: lors de l'OS X de l'application "Terminal" lit les deux fichiers cités, ce n'est pas le comportement par défaut et à cet effet ne doit pas être traitée comme telle. Et c'est pourquoi j'ai écrit une explication.
Ce n'définir
Vous devez export JAVA_HOME dans le
~/.bashrc
fichier, de sorte que chaque fois qu'une coquille s'ouvre, la variable est définie.Sur OS X, les Kits de Développement Java et Environnements d'Exécution sont stockés sous
/Library/Java/JavaVirtualMachines/
pour un bon moment maintenant. Jeter un coup d'oeil. C'est à quoi il ressemble à ma machine:Les sous-dossiers de ce type
Et il nous l'a obtenu. Donc si vous voulez le JDK 1.7.0_45, vous placez l'instruction suivante dans votre
.bashrc
Pour vous assurer que les bons binaires pour cette version de Java sont appelés, vous devez également ajouter le suivant quelque part après la déclaration ci-dessus:
Eh bien, je n'ai implicitement: Il n'est pas disponible car il n'a pas été exporté dans le bon dotfile. Pour une variable d'environnement pour être disponible, il doit être réglé 😉
FYI - Ce qui ne fonctionne pas sur la High Sierra. J'avais besoin de spécifier jdk1.8, et a java 9 installé. La seule solution était de supprimer Java 9.
Qui ne résiste pas à l'encontre de la base, de répondre à la question. Déclassement de Java est une chose tout à fait différent.
Cette réponse ne serait pas travailler pour moi, sur la High Sierra, donc j'ai voulu rendre les gens conscients de ce que cette réponse pourrait ne pas s'appliquer à eux. Je vais creuser dans certains et voir si j'ai un peu d'en savoir plus...
OriginalL'auteur Markus W Mahlberg
c'est pour Java 8 .... lien d'origine où j'ai trouvé c'est ici L'installation de Java sur Mac OS X 10.10 Yosemite et 10.11 El Capitan
Mais le a accepté de répondre travaille trop. Juste besoin de prêter attention à des changements de chemin d'accès après les mises à jour.
OriginalL'auteur SDen
Vous trouverez de nombreuses réponses sur la façon de set JAVA_HOME dans OSX, mais il est difficile de trouver une réponse à la question de savoir si la définition de JAVA_HOME est nécessaire à tous.
Pourquoi est-ce? Est-ce à dire que mon JAVA_HOME n'est pas réglée correctement?
Sur OSX, la définition de la variable d'environnement JAVA_HOME est facultatif. Le JRE et JDK installateurs ne prévoient pas JAVA_HOME; de sorte JAVA_HOME de ne pas être ensemble est parfaitement bien.
OriginalL'auteur chw1k
Si vous souhaitez utiliser le jdk 1.6 pour quelque raison, Apple a cessé de soutenir. Il sera supprimé après la mise à jour de Mac OS. Vous pouvez toujours obtenir de jdk 1.6 à partir de cette page: https://support.apple.com/kb/DL1572?locale=zh_CN
Après l'installation de jdk 1.6 nouveau, n'oubliez pas de confirmer l'exportation le bon répertoire pour la variable système $JAVA_HOME dans ~/.bash_profile, etc.
Pour moi, c'est "/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home".
OriginalL'auteur Willie Z