Fyn*_*ynn 45 uninstall java openjdk
我不想OpenJDK在我的 Ubuntu 13.04 系统上安装,但尝试卸载会openjdk-7-jre产生以下消息:
$ sudo apt-get purge openjdk-7-jre
Reading package lists... Done
Building dependency tree
Reading state information... Done
The 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-lib
Suggested 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-fonts
The 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-lib
0 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]?
Run Code Online (Sandbox Code Playgroud)
我需要做什么才能在删除时不会安装我不需要的新软件包openjdk-7?
Rao*_*out 79
好问题,我自己也在想这个。
我发现您可以使用以下命令删除 Ubuntu 13.04 上的 openjdk-7-jre:
sudo apt-get autoremove openjdk-7-jre
Run Code Online (Sandbox Code Playgroud)
按“y”,然后在提示确认此更改时按 Enter。这也应该清理所有与它一起安装的附加依赖库。
我还发现您可以使用以下命令来执行额外的清理:
sudo apt-get purge openjdk*
Run Code Online (Sandbox Code Playgroud)
如果使用以下命令:
java -version
Run Code Online (Sandbox Code Playgroud)
您应该不再看到安装的 openjdk-7-jre!
希望这可以帮助。:)
Rad*_*anu 36
您可以使用以下命令:
sudo apt-get purge openjdk-8-jre openjdk-8-jre-headless openjdk-7-jre gcj-4.7-base gcj-4.7-jre openjdk-6-jre-headless
Run Code Online (Sandbox Code Playgroud)
这样就不会安装新的软件包。这是我对上述命令的输出:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package 'gcj-4.7-base' is not installed, so not removed
Package 'gcj-4.7-jre' is not installed, so not removed
Package 'openjdk-6-jre-headless' is not installed, so not removed
The 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
Run Code Online (Sandbox Code Playgroud)
但是,我不建议你这样做。有一天,您肯定需要一个 OpenJDK(6 或 7)。
小智 8
要卸载 OpenJDK,您需要在终端中运行这些命令。\n您可以使用这些键ctrl+ shift+来获取终端enter。
仅删除 Openjdk:
\n\n$ sudo apt-get remove openjdk*\nRun Code Online (Sandbox Code Playgroud)\n\n删除 Openjdk 以及依赖项:
\n\n$ sudo apt-get remove --auto-remove openjdk*\nRun Code Online (Sandbox Code Playgroud)\n\n删除Openjdk及其\xe2\x80\x99s配置文件:
\n\n$ sudo apt-get purge openjdk*\nRun Code Online (Sandbox Code Playgroud)\n\n删除 Openjdk 及其依赖项和 it\xe2\x80\x99s 配置文件:
\n\n$ sudo apt-get purge --auto-remove openjdk*\nRun Code Online (Sandbox Code Playgroud)\n
发生这种情况可能是因为系统上的另一个包依赖于 Java。在删除时openjdk-7-jre,apt-get发现如果卸载 OpenJDK,某些包将具有未满足的依赖项。为了解决这个问题,它安装了另一个提供 Java 的包。
要找出导致此问题的原因,请在终端中运行以下命令:
packages=(default-jre default-jre-headless icedtea-6-plugin icedtea-7-plugin java-compiler java-jdk java-runtime java-runtime-headless java-sdk java-virtual-machine java2-jdk java2-runtime java2-runtime-headless java2-sdk java5-jdk java5-runtime java5-runtime-headless java5-sdk java6-jdk java6-runtime java6-runtime-headless java6-sdk java7-jdk java7-runtime java7-runtime-headless java7-sdk openjdk-6-jdk openjdk-6-jre openjdk-6-jre-headless openjdk-7-jdk openjdk-7-jre openjdk-7-jre-headless oracle-java7-bin oracle-java7-fonts oracle-java7-jdk oracle-java7-jre oracle-java7-plugin sun-java6-bin sun-java6-fonts sun-java6-jdk sun-java6-jre sun-java6-plugin)
for pkg in "${packages[@]}"; do
apt_cache_out="$(apt-cache --installed rdepends "$pkg" | grep -E '^ [| ]\S')"
if (( $? == 0 )); then
echo -----------------------
echo "$pkg"
echo "$apt_cache_out"
fi
done
Run Code Online (Sandbox Code Playgroud)
示例输出(缩短):
Run Code Online (Sandbox Code Playgroud)----------------------- openjdk-7-jre |libreoffice-filter-mobiledev |libreoffice |libreoffice-writer |libreoffice-base |libreoffice-filter-mobiledev |libreoffice |libreoffice-writer |libreoffice-base这表明所有 LibreOffice 软件包都依赖于
openjdk-7-jre. 只要安装了这些软件包,就无法在不自动安装备用 Java 的情况下卸载 OpenJDK。
openjdk-7-jre如果要删除openjdk-7-jre(而不安装其他软件包),则需要先卸载依赖于它的所有软件包。
从示例输出来看,这将是:
sudo apt-get remove oracle-java7-installer libreoffice-filter-mobiledev libreoffice libreoffice-writer libreoffice-base libreoffice-filter-mobiledev libreoffice libreoffice-writer libreoffice-base
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
301829 次 |
| 最近记录: |