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
Затем я запускаю sudo apt-get install openjdk-7-jdk
и все работает. Но тогда javac
все еще не существует, и я получаю ту же ошибку, что и выше. То же самое с openjdk-6-jdk
. Почему?
Правильный способ настройки Debian / Ubuntu, на который указывает javac
/usr/bin/javac
, - это использовать команду update-alternatives
. Вы можете сделать это в интерактивном режиме и выбрать из списка доступных опций:
sudo update-alternatives --config javac
Или вы можете указать, какой параметр вы хотите в командной строке:
sudo update-alternatives --set javac /usr/lib/jvm/java-7-openjdk/bin/javac
Из-за способ хранения информации с использованием update-alternatives
не совсем эквивалентен (но вместо этого считается предпочтительным) ручному созданию /usr/bin/java
символической ссылки на ваш javac
выбор. См. man update-alternatives
для получения дополнительной информации об этом.
Если update-alternatives
не работает, выполните эту команду и повторите попытку:
sudo ln -s /etc/alternatives/javac /usr/bin/javac
Пока установка завершена без ошибок, есть исполняемый файл javac в вашей системе; по какой-то причине он не был правильно связан с / usr / bin. sudo ln -s /usr/lib/jvm/java-7-openjdk/bin/javac /usr/bin/javac
создаст эту ссылку и исправит вашу проблему.
Вот что я сделал. Это сработало.
Сначала я установил jdk для Java 7 следующим образом:
sudo apt-get install openjdk-7-jdk
Этого может быть достаточно: проверьте и посмотрите, есть ли javac в вашем PATH, запустив javac -version
Если нет, то следуйте ответу Николаса, за исключением того, что вместо sudo update-alternatives --config javac
используйте это:
sudo update-alternatives --config java
И выбрал Java 7 в приглашении, введя 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:
Не уверенный, если это помогает, но это работало на меня. У меня была эта проблема, , javac был просто не там, где угодно, вероятно, потому что я только установил jre. При установке jdk после jre зафиксировал его.
sudo apt-get install openjdk-8-jre
sudo apt-get install openjdk-8-jdk