Я не хочу OpenJDK установлен в моей системе Ubuntu 13.04, но пытается удалить openjdk-7-jre выдает следующее сообщение:
$ sudo apt-get purge openjdk-7-jreReading package lists... DoneBuilding dependency tree Reading state information... DoneThe following extra packages will be installed: gcj-4.7-base gcj-4.7-jre gcj-4.7-jre-headless gcj-4.7-jre-lib gcj-jre gcj-jre-headless icedtea-6-jre-cacao icedtea-6-jre-jamvm libgcj-common libgcj13 libgcj13-awt openjdk-6-jre-headless openjdk-6-jre-libSuggested packages: fastjar gcj-4.7-jdk gcj-jdk libgcj13-dbg sun-java6-fonts fonts-ipafont-gothic fonts-ipafont-mincho ttf-telugu-fonts ttf-oriya-fonts ttf-kannada-fonts ttf-bengali-fontsThe following packages will be REMOVED: default-jre* icedtea-7-plugin* icedtea-netx* icedtea-plugin* libatk-wrapper-java* libatk-wrapper-java-jni* openjdk-7-jre*The following NEW packages will be installed: gcj-4.7-base gcj-4.7-jre gcj-4.7-jre-headless gcj-4.7-jre-lib gcj-jre gcj-jre-headless icedtea-6-jre-cacao icedtea-6-jre-jamvm libgcj-common libgcj13 libgcj13-awt openjdk-6-jre-headless openjdk-6-jre-lib0 upgraded, 13 newly installed, 7 to remove and 4 not upgraded.Need to get 57,0 MB/57,2 MB of archives.After this operation, 156 MB of additional disk space will be used.Do you want to continue [Y/n]?
Что мне нужно сделать, чтобы при удалении не устанавливались новые пакеты, из которых мне ни один не нужен openjdk-7?
Я обнаружил, что вы можете использовать следующее, чтобы удалить openjdk-7-jre в Ubuntu 13.04:
sudo apt-get autoremove openjdk-7-jre
Нажмите "y", а затем нажмите enter, когда появится запрос на подтверждение этого изменения. Это также должно привести к очистке всех дополнительных библиотек зависимостей, которые были установлены вместе с ним.
Я также обнаружил, что вы можете использовать следующую команду для выполнения дополнительной очистки:
sudo apt-get purge openjdk*
Если вы используете следующую команду:
java -version
Вы больше не должны видеть установленный openjdk-7-jre!
Таким образом, новые пакеты устанавливаться не будут. Вот мой вывод для приведенной выше команды:
Reading package lists... DoneBuilding dependency tree Reading state information... DonePackage 'gcj-4.7-base' is not installed, so not removedPackage 'gcj-4.7-jre' is not installed, so not removedPackage 'openjdk-6-jre-headless' is not installed, so not removedThe following packages will be REMOVED: default-jre* icedtea-7-plugin* icedtea-netx* libatk-wrapper-java* libatk-wrapper-java-jni* libreoffice-base* minecraft-installer* openjdk-7-jre*0 upgraded, 0 newly installed, 8 to remove and 6 not upgraded.After this operation, 10,3 MB disk space will be freed.Do you want to continue [Y/n]? n
Но я не предлагаю вам делать это. В один прекрасный день вам наверняка понадобится OpenJDK (6 или 7).
Чтобы удалить OpenJDK, вам необходимо выполнить эти команды в вашем терминале.Вы можете получить доступ к терминалу, используя эти ключи, ctrl + shift + enter.
Удалить только Openjdk:
$ sudo apt-get remove openjdk*
Удалите Openjdk вместе с зависимостями:
$ sudo apt-get remove --auto-remove openjdk*
Удалите Openjdk и его конфигурационные файлы:
$ sudo apt-get purge openjdk*
Удалите Openjdk вместе с зависимостями и его конфигурационными файлами:
Вероятно, это происходит из-за того, что другой пакет в вашей системе зависит от Java. При удалении openjdk-7-jre, apt-get видит, что если он удалит OpenJDK, некоторые пакеты будут иметь неудовлетворенные зависимости. Чтобы решить эту проблему, он устанавливает другой пакет, который предоставляет Java.
Чтобы выяснить, что является причиной этого, выполните следующие команды в терминале:
Это указывает на то, что все пакеты LibreOffice зависят от openjdk-7-jre. Пока эти пакеты установлены, OpenJDK нельзя удалить без автоматической установки альтернативной Java.
Удалять openjdk-7-jre
Если вы хотите удалить openjdk-7-jre (без установки других пакетов), вам нужно будет сначала удалить все пакеты, которые зависят от него.
Я заметил, что вы сказали, что хотите использовать JDK Oracle. Если вы хотите вместо этого установить JDK Oracle, вы можете загрузить его и извлечь в выбранном вами месте.
Затем вы просто используете update-alternatives, чтобы сообщить своей системе, где установлена Java. Если вы не уверены в синтаксисе update-alternatives, вы можете использовать для этого интерфейс galternatives.
Например... Здесь я довольно широко использую JDK от Oracle.
Я извлекаю его в /opt /java/.
Затем, чтобы все двоичные файлы Oracle Java были основными утилитами для материалов, связанных с Java, я делаю следующее с помощью update-alternatives:
for j in `ls /opt/java/bin` ; do update-alternatives --install /usr/bin/"$j" "$j" /opt/java/bin/"$j" 1 ; done
Это использует все утилиты Oracle Java, которые вы ранее извлекли, и дает им первый приоритет, если у вас установлены другие версии Java. (поскольку Ubuntu позволяет устанавливать несколько версий одной и той же утилиты)
Вместе с остальными ответами - вы проверили свой .bashrc файл, чтобы убедиться, что среды JAVA_HOME там нет? Удаление этой строки должно помочь освободить вашу Ubuntu от openjdk. Как пример: