Comment puis-je supprimer complètement Java 6 d'Apple et faire de Java 7 Oracle par défaut pour tout?


12

Je voudrais supprimer complètement Java 6 d'Apple et faire de Java 7 Oracle par défaut pour chaque programme. Par exemple, avec Eclipse, j'ai dû jouer avec eclipse.ini pour spécifier JAVA_HOME pour Java 7, et la même chose pour TunnelBear. Pas de chance pour Aptana, cependant (il veut toujours le Java d'Apple) Existe-t-il un moyen de faire du Java d'Oracle par défaut en termes de PATH?

macos  java 

1
Je pense que Java 7 est la valeur par défaut pour PATH car / usr / bin / java devrait être Java 7. Cependant, le problème est que .apps a quelque chose d'autre dans leurs fichiers .plist
user151019

Réponses:


4

Téléchargez et installez le dernier kit de développement Java (JDK) d'Oracle, qui le placera /Library/Java/JavaVirtualMachines/jdk1.7.0_11.jdk(ou quelle que soit la dernière version). Maintenant, démarrez Terminal.app et entrez les commandes suivantes:

  1. cd /System/Library/Java/JavaVirtualMachines (passez au répertoire approprié)

  2. sudo mv 1.6.0.jdk backup.1.6.0.jdk (conservez l'ancien JDK, juste au cas où - vous aurez besoin d'un mot de passe administrateur pour ce faire)

  3. sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_11.jdk 1.6.0.jdk (liez votre nouvelle installation JDK à l'endroit où les applications s'attendent à ce que l'ancienne soit)

Gardez à l'esprit qu'avec toute autre mise à jour jdk, vous devrez mettre à jour le lien symbolique vers le nouveau répertoire:

sudo rm /System/Library/Java/JavaVirtualMachines/1.6.0.jdk && sudo ln -s /Library/Java/JavaVirtualMachines/new_jdk_version /System/Library/Java/JavaVirtualMachines/1.6.0.jdk

Vous ne devez pas créer le lien symbolique 1.6.x, l'application ne s'attend pas à ce que le jdk soit dans / System. Si quoi que ce soit, vous devez définir JAVA_HOME dans votre profil.
anddam

2

Ces instructions ont bien fonctionné pour moi sur OS X Mavericks.

  • Supprimer les machines virtuelles Java d'Apple

    $ sudo rm -rf /System/Library/Java/JavaVirtualMachines/
  • Supprimer les enregistrements du programme d'installation

    $ sudo rm /private/var/db/receipts/com.apple.pkg.JavaForMacOSX*
  • Supprimez les reçus du programme d'installation (supprimez les <dict>...</dict>entrées qui font référence à com.apple et java)

    $ sudo emacs /Library/Receipts/InstallHistory.plist
  • Définissez les liens symboliques pour Java 7

    $ sudo rm /usr/bin/java
    $ sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_17.jdk/Contents/Home/bin/java /usr/bin/java
    
  • Lien symbolique facultatif JAVA_HOME

    sudo rm /Library/Java/Home
    sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_17.jdk/Contents/Home /Library/Java/Home
    

0

Eh bien, si vous installez la dernière mise à jour Java d'Apple, cela devrait en fait désinstaller Java 6. Vous pouvez aller directement sur le site Web d'Oracle pour télécharger Java 7. C'est ce que j'ai fait. Avec seulement Java 7 sur votre système, cela devrait le rendre par défaut.


Sur Lion, la mise à jour Java n'a pas désinstallé le java d'Apple - / usr / bin / java est maintenant Java 7 mais Java 6 est toujours utilisable comme/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java
user151019

J'utilise Java 7 uniquement et les mises à jour d'Apple sur Java sont quelque peu fastidieuses. Je le veux - tout le monde a réussi à le faire de cette façon, encore? (c.-à-d. tellement qu'Apple ne pousserait pas les mises à jour spécifiques à Java; je suis bien en train de passer directement à travers Oracle).
akauppi

0

Je sais que c'est un vieux fil, mais si l'on a Adobe CS5 sur leur machine, il DOIT AVOIR la version Apple 1.6 de java pour que la suite fonctionne. J'utilisais Eclipse qui avait besoin de 1,7 ou plus. Je pensais que cela remplacerait la version Apple, mais ce n'est pas le cas. La version Apple se trouve dans le dossier System / Library et la version Oracle se trouve dans le dossier Library.

J'ai pensé que j'ajouterais un peu plus d'informations pour ceux qui pourraient avoir besoin de ces informations.

OS X Lion


Cette information est dans les autres réponses
user151019

N'a pas vérifié. Pardon.
kdd
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.