я столкнулся с этим, потому что я работаю через учебник по программированию для android, который хочет использовать конкретные Java SE и JRE (8u121) и просит, чтобы все другие пакеты java были удалены перед продолжением установки. Поэтому после прочтения вышеизложенных идей я пошел с:
sudo apt-get remove openjdk*
и вот результат:
bryan@kali:~$ java -version
bash: /usr/bin/java: No such file or directory
таким образом, вышесказанное говорит о том, что java не найдена ни одной версии. Что OP хотел сделать (я думать.)
в случае, если кто-то находит этот поток, потому что они удаляют Java, так что они могут установить старую версию, я включил проходной я нашел. Первые два кода помогут вам установить его, если у вас нет графического интерфейса. Если у вас есть архив, то пропустите их. Последний блок кода содержит некоторые части, которые необходимо отредактировать, если вы не устанавливаете мою версию.
{начать копировать/вставить}
в случае, если вы пытаетесь установить Java JDK удаленно и не имеют абсолютно никакого доступа к графическому интерфейсу пользователя и веб-браузер использовать следующий метод curl для загрузки Java JDK с помощью командной строки.
во-первых, получить правильный URL загрузки с помощью команды curl:
$ curl -s http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html | grep "otn-pub" | cut -d \" -f12
приведенная выше команда выводит кучу ссылок для вашего выбора. Чтобы начать загрузку нужного файла Java, скопируйте его URL-адрес и запустите загрузку с помощью команды curl, принимая запрошенную лицензию Jave. Для пример:
$ curl -LOb "oraclelicense=a" http://download.oracle.com/otn-pub/java/jdk/8u121-b13/e9e7ea248e2c4826b92b3f075a80e441/jdk-8u121-linux-x64.tar.gz
установить Java JDK
На этом этапе мы должны иметь соответствующий архив Java JDK в нашем текущем рабочем каталоге:
$ ls
jdk-8u121-linux-x64.tar.gz
создайте целевой каталог установки Java JDK:
# mkdir /opt/java-jdk
извлеките ранее загруженный архив Java JDK:
# tar -C /opt/java-jdk -zxf jdk-8u121-linux-x64.tar.gz
установить Oracle Java по умолчанию
В настоящее время система не распознает нашу установку Java JDK:
$ update-alternatives --list java
update-alternatives: error: no alternatives for java
$ java
bash: java: command not found
использовать обновление-альтернатив команда, чтобы включить оба, java и javac как часть среды Java системы.Пожалуйста, замените ниже путь к двоичным файлам java, где это необходимо, чтобы отразить загруженную версию java:
# update-alternatives --install /usr/bin/java java /opt/java-jdk/jdk1.8.0_121/bin/java 1
update-alternatives: using /opt/java-jdk/jdk1.8.0_121/bin/java to provide /usr/bin/java (java) in auto mode
# update-alternatives --install /usr/bin/javac javac /opt/java-jdk/jdk1.8.0_121/bin/javac 1
update-alternatives: using /opt/java-jdk/jdk1.8.0_121/bin/javac to provide /usr/bin/javac (javac) in auto mode
{конец копировать/вставить}
хорошо, так что после того, как я последовал, что я хотел, чтобы подтвердить, что он работает...
bryan@kali:~/Desktop$ java -version
java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)
вот именно! Это то, чего мы хотим.
затем я стал обеспокоен тем, что это "apt update" может просто отменить то, что я сделал, обновив пакет (не уверен). Поэтому я отложила их на потом. Снять Hold: АПТ-отметку возврат.
bryan@kali:~/Desktop$ sudo apt-mark hold openjdk-8*
openjdk-8-jre set on hold.
openjdk-8-jre-headless set on hold.
openjdk-8-doc set on hold.
openjdk-8-jdk set on hold.
openjdk-8-dbg set on hold.
openjdk-8-demo set on hold.
openjdk-8-jdk-headless set on hold.
openjdk-8-source set on hold.
openjdk-8-jre-dcevm set on hold.
openjdk-8-jre-zero set on hold.