109 votes

Comment utiliser JDK 7 sur Mac OSX ?

Je voudrais utiliser l'API WatchService comme indiqué dans ce lien : http://download.oracle.com/javase/tutorial/essential/io/notification.html

Après avoir lu un peu, j'ai découvert que WatchService fait partie de la classe NIO qui est prévue pour le JDK 7. Donc, il est en version bêta. C'est bien.

http://jdk7.java.net/download.html a le JDK que j'ai téléchargé et extrait. J'ai un tas de dossiers. Je ne sais pas quoi faire avec eux.

Ensuite, j'ai lu un peu plus et j'ai découvert qu'un groupe de personnes sympathiques avait créé le JDK 7 sous forme de binaire afin que quelqu'un comme moi puisse l'installer facilement. Cela s'appelle Open JDK : http://code.google.com/p/openjdk-osx-build/

J'ai donc téléchargé le fichier .dmg et l'ai installé. Puis j'ouvre "Java Preference" et je vois que OpenJDK7 est disponible.

Donc, maintenant je sens que je peux commencer à essayer l'API WatchService. Dans le tutoriel du premier lien, l'auteur a donné un fichier .java pour le tester d'abord et s'assurer qu'il fonctionne. Voici le lien vers le fichier : http://download.oracle.com/javase/tutorial/essential/io/examples/WatchDir.java

Je démarre donc Eclipse (en fait, j'utilise STS), je crée un nouveau projet Java et je choisis JaveSE-1.7 dans le champ "use an execution environment JRE :". Dans le dossier src, j'ai copié-collé le fichier WatchDir.java.

Et je vois toujours des tonnes de lignes rouges sinueuses. Tous les "import.java.nio.*" sont tous rouges et je ne peux pas l'exécuter comme une application Java.

Que dois-je faire ?

0 votes

Pouvez-vous l'exécuter et le compiler sur la console ?

0 votes

Vous voulez dire : $javac WatchDir.java et ensuite $ Java WatchDir ? Je vais essayer. Merci ! Bien que j'aimerais beaucoup qu'il soit disponible dans l'IDE Eclipse.

1 votes

A partir d'aujourd'hui, il y a une version officielle d'Oracle - Java SE 7u4

87voto

vectorsize Points 855

C'est ainsi que j'ai réussi à faire fonctionner la version 1.7 avec Eclipse. J'espère que cela vous aidera.

  1. J'ai téléchargé le dernier OpenJDK 1.7 universal (32/64 bits) JDK de la branche Mac OS/X de http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
  2. copié le jdk dans le répertoire /Library/Java/JavaVirtualMachines/ à côté de la 1.6.0 par défaut
  3. Dans Eclipse > Préférences > Java > JREs installés, vous en ajoutez un nouveau, de type MacOS X VM, et définissez le domicile comme /Bibliothèque/Java/JavaVirtualMachines/1.7.0.jdk/Contenu/Home et nom Java SE 7 (OpenJDK)
  4. Cliquez sur Terminer
  5. Définir le JRE ajouté comme valeur par défaut

ça devrait être ça :)

0 votes

Merci mon elcipse s'est complètement bloqué alors j'ai essayé d'utiliser le sdk 1.7 qui a fonctionné parfaitement ! :=)

1 votes

Ce projet (openjdk-osx-build) a été fermé et ne propose plus de téléchargements.

0 votes

L'étape 2 peut être juste : exécutez le téléchargement de jdk-7u40-macosx-x64.dmg et il ajoutera automatiquement le fichier au chemin.

62voto

Mukund Points 536

Oracle a publié JDK 7 pour OS X .

0 votes

Je vais mettre à jour la réponse avec les dernières informations. Veuillez me faire savoir si ce n'est pas la bonne réponse. Merci.

0 votes

@Yko - regardez chez BasilBourque pour l'info la plus complète (ou la mienne pour le premier Oracle JDK7 version 4)

12 votes

Notez que pour faire en sorte que les applications utilisent Java 1.7 d'Oracle au lieu de Java 1.6 d'Apple, j'ai dû lancer l'application /Library/Java/JavaVirtualMachines/1.7.0.jdk et faites glisser "Java SE 7" en haut de la liste dans l'onglet "Général". Cela rendra également javac indiquer la version Java 1.7 lors de l'exécution du terminal.

56voto

Basil Bourque Points 8938

Java 9, 10, 11

Il y a des années, Apple a rejoint le OpenJDK en transférant leur code JVM, auparavant propriétaire et spécifique à macOS, sous forme de code source ouvert et gratuit. Apple a cessé de distribuer sa propre JVM/JDK, s'en remettant aux versions de marque d'Oracle pour inclure une version pour macOS.

Oracle a récemment annoncé son intention d'amener la version de sa JVM à parité de fonctionnalités avec le projet OpenJDK, avec pratiquement la même base de code. La société a même fait don de ses outils précédemment commerciaux, Enregistreur de vol & Contrôle de la mission au projet OpenJDK. Cela fait partie de la transition vers un nouveau plan de "train de versions" rapide pour une planification prévisible des versions de Java et d'OpenJDK. Notamment, les périodes pour les mises à jour publiques gratuites sont maintenant raccourcies. Voir cette annonce 2017-09 y cette publication de Mark Reinhold .

En conséquence de tout cela, les utilisateurs de Java sur macOS ont le choix entre plusieurs fournisseurs pour la mise en œuvre de Java. À ce stade, au moins trois sources sont basées sur OpenJDK pour macOS :

  • Les versions d'Oracle du JDK et du JRE, avec un support payant optionnel.
  • Systèmes Azul libérant :
    • Zulu une gamme de JVM gratuites avec un support payant optionnel.
    • Zing ligne de JVM commerciales avec des caractéristiques spéciales telles qu'un collecteur de déchets alternatif.
  • Code source d'OpenJDK Il s'agit d'une compilation et d'une installation à la carte (ce qui n'est peut-être pas pratique pour la plupart d'entre nous).

Entre-temps, IBM a fait don du code d'une JVM à la fondation Eclipse, qui est maintenant hébergée dans le siège de l'Union européenne. OpenJ9 projet. Je me demande s'ils ne pourraient pas également soutenir une version de macOS, bien qu'il soit trop tôt pour le dire.

Personnellement, j'utilise actuellement le Zulu version de Java 10.0.1 d'Azul sur macOS High Sierra avec succès avec IntelliJ 2018.2 pour produire des applications web basées sur Java avec des outils de gestion de la qualité. Vaadin .

Installation/démontage

Oracle et Azul fournissent tous deux des installateurs très faciles à utiliser pour installer la JVM/JDK sur votre Mac. Vérifiez votre installation en utilisant le Terminal.app (ou équivalent) pour taper et exécuter :

java -version

Vous trouverez les installations Java dans ce dossier au niveau de la racine de votre lecteur (pas dans votre dossier personnel) :

/Bibliothèque/Java/JavaVirtualMachines

Chaque version de chaque fournisseur s'y trouve, dans un dossier imbriqué étiqueté. Vous pouvez supprimer toute installation en supprimant simplement le dossier emboîté de cette version et en fournissant votre mot de passe système lorsque vous y êtes invité.

Java 8

Vous pouvez télécharger le kit de développement Java (JDK) para Java 8 para el supporté par versions de Mac OS X :

  • Mountain Lion (10.8.3+)
  • Mavericks (10.9)
  • Yosemite (10.10)
  • El Capitan (10.11)

Chaque version de JVM que vous installez peut être trouvée ici :

/Library/Java/JavaVirtualMachines

Pour plus d'instructions et une FAQ, voir ce guide Oracle .

Java 7

Pour chaque version de Java 7 Depuis la mise à jour 4, une version Mac est prête aux côtés des autres plateformes. Fonctionne sur les Macs avec du matériel 64 bits sur Lion (10.7.3+), Mountain Lion (10.8.3+), et Mavericks (10.9.x).

Oracle a annoncé la version officielle du JDK pour Java SE 7 Update 4 sur Mac OS X (Lion), en date du 2012-04-26. Plus besoin d'astuces discuté sur cette page.

L'installation est simple par ces instructions :

  1. Télécharger à partir de l'endroit habituel sur le site Web d'Oracle.
  2. Montez le DMG.
  3. Exécutez le programme d'installation.

Cette version comporte quelques limitations, notamment l'absence de prise en charge de la fonction Démarrage Web Java y el Plugin Java pour les navigateurs web. Cette prise en charge est attendue dans le courant de l'année.

Après l'installation, lisez le JDK pour Mac ReadMe. Plus important encore, si vous voulez que Java 7 soit la valeur par défaut, faites-le glisser en haut de la liste dans l'onglet Préférences Java qui se trouve dans votre dossier Utilities.

Mac OS X prend facilement en charge plusieurs JVM simultanément. Chacune d'entre elles se trouve désormais ici :

/Library/Java/JavaVirtualMachines

Félicitations aux équipes d'Apple et d'Oracle pour leur réussite. Ce geek a le frisson de voir que Mac OS X est listé comme une " Configuration du système certifié ".

Conseil : pour commencer Eclipse sur un Mac où seul Java 7 est installé, ouvrez l'application alias fichier nommé éclipse plutôt que le fichier nommé Eclipse.app .

Java 6

Apple continue de fournir une mise à jour de Java 6 pour toutes les versions de Mac OS X jusqu'à Mountain Lion.

Si vous faites quelque chose qui nécessite Java, comme taper "java -version" dans Terminal.app, une boîte de dialogue s'affiche pour vous proposer d'installer Java. Si vous acceptez, l'installation se fait automatiquement, comme pour les autres "mises à jour logicielles" d'Apple.

Vous trouverez Java installé à cet endroit, différent de Java 7 et 8 :

/System/Library/Java/JavaVirtualMachines

Java 6 a a atteint sa fin de vie avec Oracle à partir de 2013-02 (sauf si vous avez un accord de support commercial avec Oracle). Vous devriez donc passer à Java 7 ou 8.

Test de la nouvelle version

Dans Terminal.app, tapez java -version pour vérifier quelle version est la version par défaut actuelle.

Suppression des anciennes versions

Après avoir installé une nouvelle version, vous pouvez visiter le dossier décrit ci-dessus pour supprimer les anciennes versions. Déplacez le dossier vers la Corbeille, et fournissez votre mot de passe système pour terminer le déplacement.


Au fait, Apple fournit un liste de diffusion pour les problèmes techniques des développeurs liés à Java sur OS X.

0 votes

Merci, ça a bien marché pour moi. Il faut le changer dans les préférences aussi.

0 votes

@Tony : Oui, la modification de vos Préférences est mentionnée dans le 4ème paragraphe.

0 votes

Ça ne marche pas. Je lance le programme d'installation et il signale un "succès", mais rien ne semble être réellement installé. /System/Library/Java/JavaVirtualMachines ne contient que le JDK de Java 6.

9voto

peter_budo Points 1175

Je sais que certains voudront me gifler pour avoir rouvert un vieux post, mais si vous le sentez, faites-le. J'espère simplement que cela pourra aider quelqu'un d'autre qui essaie de configurer JDK 7 sur Mac OS (en utilisant IntelliJ).

Ce que j'ai fait pour que cela fonctionne sur ma machine est le suivant :

  • suivi les instructions sur Portage Oracle JDK7 Mac OS X pour l'installation générale
  • dans IntelliJ, ouvrez/créez un nouveau projet pour pouvoir ajouter un nouveau SDK (Fichier > Structure du projet).
  • Sélectionnez Platform Settings > SDKs, appuyez sur le signe "+" (plus) pour ajouter un nouveau SDK.
  • sélectionnez JSDK et naviguez vers /Library/Java/JavaVirtualMachines/JDK 1.7.0 Developer Preview.jdk/Contents/Home. Ne pas se tromper avec /Users/YOUR_USERNAME/Bibliothèque/Java/ . Cela va lier 4 JARs du répertoire "lib" (dt.jar, jconsole.jar, sa-jdi.jar et tools.jar).
  • vous devrez également ajouter les JARs de /Library/Java/JavaVirtualMachines/JDK 1.7.0 Developer Preview.jdk/Contents/Home/jre/lib (charsets.jar, jce.jar, JObjC.jar, jsse.jar, management-agent.jar, resources.jar et rt.jar)

6voto

Jon Quarfoth Points 1210

Il est possible que vous deviez encore ajouter le JDK dans Eclipse (STS). Ce n'est pas parce que le JDK est sur le système qu'Eclipse sait où le trouver.

Allez dans Préférences > Java > JREs installés

S'il n'y a pas d'entrée pour le JDK 1.7, ajoutez-le. Vous devrez indiquer à Eclipse où vous avez installé votre JDK 1.7.

Si Eclipse ne peut pas trouver un JRE compatible avec la version 1.7, je suppose qu'il utilise simplement votre JRE par défaut, qui pointe probablement encore vers Java 1.6, ce qui causerait vos lignes rouges ondulées.

0 votes

Bon appel ! Mais j'ai besoin d'un peu plus de conseils. Je vais sous Installed JREs -> Add et je pointe vers .../jdk1.7.0/jre et il a trouvé un tas de fichiers JAR. Je clique sur Finish. Le programme tente de se construire, mais il indique maintenant .../jdk1.7.0/jre/bin/java : cannot execute binary file. Qu'est-ce que cela signifie ?

0 votes

Je ne suis pas vraiment sûr. Vous pourriez essayer de faire pointer eclipse sur le répertoire jdk de base au lieu du répertoire jre. Je pense que c'est ainsi que j'ai généralement procédé sous Windows, bien que je n'aie jamais désactivé le JDK par défaut sur mon Mac. Si cela ne fonctionne pas, vous pouvez essayer d'installer une autre distribution de JDK 7 - il y en avait plusieurs disponibles sur le site openjdk-osx-build, peut-être en avez-vous pris une qui n'est pas compatible avec votre système ?

0 votes

J'ai essayé. Cela me donne l'erreur suivante : "La cible n'est pas une racine JDK. La bibliothèque système n'a pas été trouvée"

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X