web-dev-qa-db-fra.com

Java 8: la classe JavaLaunchHelper est implémentée dans les deux

J'essaie de lancer Cassandra et je rencontre un problème avec JavaLaunchHelper situé à deux endroits. J'exécute Java 8. Voici la erreur exacte:

objc[413]: Class JavaLaunchHelper is implemented in both
/Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home/bin/Java and 
/Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home/jre/lib/libinstrument.dylib. 
One of the two will be used. Which one is undefined.

Trouvé une question similaire pour Java 7:

La classe JavaLaunchHelper est implémentée dans les deux. L'un des deux sera utilisé. Lequel n'est pas défini

Quelle est la meilleure façon de résoudre ce problème?

17
user3181113

Il s'agit d'un bug dans le JDK et n'est toujours pas corrigé (à partir de 8u25). Voir plus d'informations ici .

15
J.R. Garcia

Cela ne devrait pas être un problème, juste un message ennuyeux. Mais Cassandra n'a pas encore été vérifié par rapport à Java 8 pour le moment, donc vous pouvez voir une certaine étrangeté.

1
Zanson

Vous devez aller dans Préférences/Build, Execution, Deployment/Debugger et désactiver l'option: "Force Classic VM for JDK 1.3.x and later" Cela fonctionne pour moi

1
David Figueroa

mettre des lignes dans les fichiers ~/.bashrc (ou/et ~/.zshrc) et enregistrer

export Java_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_92.jdk/Contents/Home 
export PATH=$Java_HOME/bin:$PATH

puis redémarrez (déconnexion/connexion) le terminal (IDE)

0
Andrey

Deux étapes résolvent ce problème:

1. Naviguez vers /Library/Internet Plug-Ins et supprimez le JavaAppletPlugin.plugin répertoire.

2. Naviguez vers /Library/PreferencePanes et supprimez JavaControlPanel.prefpane.

Essentiellement, faites une chose: désinstallez jre!

0
Charles He