J'ai installé Java dans ma CentOS version 5.5 machine à l'aide de la commande yum install Java
. Mais je suis incapable de compiler une classe en utilisant javac.
Dois-je installer un autre package?
J'ai essayé de localiser l'exécutable javac
mais je ne parviens pas à le localiser.
/usr/bin/Java
est lié comme suit:/usr/bin/Java
-> /etc/alternatives/Java
/etc/alternatives/Java
-> /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/Java
J'ai vu la sortie suivante par yum list installed |grep Java
:
Java-1.6.0-openjdk.x86_64 1:1.6.0.0-1.16.b17.el5 installed
tzdata-Java.x86_64 2011b-1.el5 installed
Vous avez uniquement installé l'environnement d'exécution Java (JRE), qui ne contient pas javac
. Pour javac
, vous devez installer le OpenJDK Development Environment . Vous pouvez installer Java-devel
ou Java-1.6.0-openjdk-devel
, qui incluent tous deux javac
.
Au fait: vous pouvez trouver quel paquet fournit javac
avec une recherche yum
, par exemple.
su -c 'yum provides javac'
sur des versions plus récentes de CentOS, par ex. 6 le commandement change en
su -c 'yum provides */javac'
Autre remarque: l'utilisation de yum
et openjdk
n'est qu'une possibilité pour installer le JDK. Beaucoup de gens préfèrent le SDK "original" de Sun/Oracle. Voir Comment installer Java SDK sur CentOS? et des liens pour des alternatives.
Travaillé pour moi avec cette commande:
yum install Java-devel
Utilisez la commande Sudo suivante:
Sudo yum install Java-1.6.0-openjdk-devel
Je ne sais pas exactement ce que yum install Java
va réellement installer. Mais pour vérifier l'existence de javac, faites:
> updatedb
> locate javac
de préférence comme racine. Si ce n'est pas le cas, vous avez probablement uniquement installé le moteur d'exécution Java (JRE) et non le kit de développement Java (JDK). Vous feriez mieux d’obtenir cela depuis le site Oracle : car le dépôt Linux peut être légèrement en retard par rapport aux dernières versions et semble ne fournir que le open-jdk par opposition à celui d’Oracle/Sun, ce que j’aimerais faire. préfère donner le choix.
Le javac est-il exécutable dans un répertoire qui fait partie de votre PATH?
Je ne connais pas l'équivalent CentOS du chemin Windows, mais si vous vous connectez au répertoire du sdk Java et exécutez ./javac, quelque chose se produit-il?
installer la même version javac comme votre JRE yum installer Java-devel