J'ai essayé de mvn install
et a reçu ce message:
Compilation failure
Unable to locate the Javac Compiler in:
/usr/lib/jvm/Java-7-openjdk-AMD64/jre/../lib/tools.jar
Please ensure you are using JDK 1.4 or above and
not a JRE (the com.Sun.tools.javac.Main class is required).
In most cases you can change the location of your Java
installation by setting the Java_HOME environment variable.
Eh bien, il y a un jdk ouvert, j'en ai aussi téléchargé un autre. J'ai essayé de pointer Java_HOME vers les deux, maintenant il est défini:
Java_HOME=/usr/lib/jvm/jdk1.7.0_03
export Java_HOME
PATH=$PATH:$Java_HOME/bin
export PATH
J'ai également essayé de choisir l'un de ceux ouverts avec Sudo update-alternatives --config Java
mais a la même erreur avec différentes versions de jdk.
Comment puis-je résoudre ce problème? Merci d'avance.
il semble que votre PATH ne soit pas correctement récupéré ... la sortie de "echo $ PATH" contient-elle le répertoire où réside javac? Je suggérerais ce qui suit:
ouvrir le terminal et faire:
export Java_HOME=/usr/lib/jvm/jdk1.7.0_03
export PATH=$PATH:$Java_HOME/bin
javac -version
which javac
si javac -version ne fonctionne toujours pas, créez un lien symbolique dans/usr/local/bin pointant vers votre binaire javac:
cd /usr/local/bin
ln -s /usr/lib/jvm/jdk1.7.0_03/bin/javac javac
cela devrait vous permettre de démarrer ... une alternative est d'essayer de configurer Java via votre système de gestion de paquets (par exemple "apt-get install Java" ou quelque chose de similaire))
J'ai rencontré une erreur similaire sur une machine Ubuntu lors de l'exécution d'une build Maven à partir de Jenkins. Si la sortie de 'javac -version' invite les messages ci-dessous:
"Le programme" javac "se trouve dans les packages suivants: default-jdk ecj gcj-5-jdk openjdk-8-jdk-headless gcj-4.8-jdk gcj-4.9-jdk openjdk-9-jdk-headless Essayez: apt installer "
Ensuite, vous pouvez installer "openjdk-8-jdk-headless" en utilisant:
Cela a résolu mon problème et la construction de maven s'est bien passée.