J'essaie d'exécuter javac sur un terminal Ubuntu. Mais je reçois ce qui suit:
$ javac
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
Try: Sudo apt-get install <selected package>
jdk est déjà installé et fonctionne Sudo apt-get install openjdk-6-jdk
dit 0 upgraded, 0 newly installed, 0 to remove and 322 not upgraded.
Mon jdk est installé dans/usr/lib/jvm/Java-6-open-jdk; et je suis capable de compiler et d'exécuter un programme Java à partir d'Eclipse. Mais je rencontre ce problème mentionné lors de l'utilisation d'un terminal.
Le binaire javac
(et probablement d'autres Java) est/ne se trouve pas dans le $PATH
variable d'environnement. Vous pouvez résoudre ce problème de plusieurs manières:
Ajouter /usr/lib/jvm/Java-6-open-jdk/bin
à votre utilisateur $PATH
variable d'environnement. Pour ce faire, ajoutez une ligne similaire à la suivante dans le .bash_profile
:
export PATH=${PATH}:/usr/lib/jvm/Java-6-open-jdk/bin
Vous devrez redémarrer votre session de terminal pour qu'elle prenne effet.
Créez des liens symboliques vers les binaires Java à partir d'un répertoire qui fait déjà partie de votre chemin d'accès (tel que /usr/bin
)
Sudo ln -s /usr/lib/jvm/Java-6-open-jdk/bin/Java /usr/bin/
Sudo ln -s /usr/lib/jvm/Java-6-open-jdk/bin/javac /usr/bin/
BTW: il existe plusieurs autres exécutables Java dans /usr/lib/jvm/Java-6-open-jdk/bin
. J'ai montré les commandes de lien symbolique pour Java
et javac
ci-dessus. Vous devez exécuter une commande similaire pour tous les autres exécutables que vous souhaitez utiliser.
Utilisez le chemin d'accès complet directement sur la ligne de commande:
$ /usr/lib/jvm/Java-6-open-jdk/bin/javac
Apparemment, il existe une solution élégante mais spécifique à Ubuntu à ce problème. Sur un système Ubuntu, utilisez pdate-Java-alternatives .