The program 'javac' can be found in the following packages:
* openjdk-6-jdk
* ecj
* gcj-4.4-jdk
* gcj-4.6-jdk
* gcj-4.5-jdk
* openjdk-7-jdk
Ensuite, je lance Sudo apt-get install openjdk-7-jdk
et tout fonctionne. Mais alors, javac
n’existe toujours pas et j’obtiens la même erreur que ci-dessus. Même chose avec openjdk-6-jdk
. Pourquoi?
Tant que l'installation est terminée sans erreur, il y a un exécutable javac sur votre système; pour une raison quelconque, cela n’était pas correctement lié à/usr/bin. Sudo ln -s /usr/lib/jvm/Java-7-openjdk/bin/javac /usr/bin/javac
va créer ce lien et devrait résoudre votre problème.
La manière correcte pour Debian/Ubuntu de configurer le javac
qui est pointé par /usr/bin/javac
consiste à utiliser la commande update-alternatives
. Vous pouvez le faire de manière interactive et choisir parmi une liste d'options disponibles:
Sudo update-alternatives --config javac
Ou vous pouvez spécifier quelle option vous voulez sur la ligne de commande:
Sudo update-alternatives --set javac /usr/lib/jvm/Java-7-openjdk/bin/javac
En raison de la manière dont il stocke les informations, utiliser update-alternatives
n’est pas exactement équivalent (mais plutôt préférable) à faire de /usr/bin/Java
manuellement un lien symbolique vers votre javac
name__. Voir man update-alternatives
pour plus d'informations à ce sujet.
Si update-alternatives
ne fonctionne pas, exécutez cette commande et essayez à nouveau:
Sudo ln -s /etc/alternatives/javac /usr/bin/javac
Voici ce que j'ai fait. Ça a marché.
J'ai d'abord installé le jdk pour Java 7 comme ceci:
Sudo apt-get install openjdk-7-jdk
Cela pourrait suffire: vérifiez si javac dans votre PATH en exécutant javac -version
Sinon, suivez la réponse de Nicholas, sauf qu'au lieu de Sudo update-alternatives --config javac
, utilisez ceci:
Sudo update-alternatives --config Java
Et sélectionnez Java 7 à l'invite en tapant 2
:
There are 2 choices for the alternative Java (providing /usr/bin/Java).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/Java-6-openjdk-AMD64/jre/bin/Java 1061 auto mode
1 /usr/lib/jvm/Java-6-openjdk-AMD64/jre/bin/Java 1061 manual mode
* 2 /usr/lib/jvm/Java-7-openjdk-AMD64/jre/bin/Java 1051 manual mode
Press enter to keep the current choice[*], or type selection number: