我尝试在 ubuntu 16.04 上安装 java,但出现以下错误
Download done.
Removing outdated cached downloads...
update-alternatives: error: no alternatives for java
update-alternatives: error: cannot stat file '/etc/mysql/my.cnf.fallback': Not a directory
dpkg: error processing package oracle-java8-installer (--configure):
subprocess installed post-installation script returned error exit status 2
Errors were encountered while processing:
oracle-java8-installer
E: Sub-process /usr/bin/dpkg returned an error code (1)
所以我用以下命令删除了安装
sudo apt-get purge oracle-java8-installer
sudo apt-get clean
sudo apt-get update
sudo add-apt-repository --remove ppa:webupd8team/java
sudo apt-get update
sudo apt-add-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
但错误仍然是一样的,希望有人能帮助我,谢谢。
答案1
您需要手动删除软件包安装后脚本:
sudo rm /var/lib/dpkg/info/oracle-java8-installer.postinst -f
sudo dpkg --configure oracle-java8-installer
答案2
如果您在安装 java8 时仍然遇到问题,我建议您手动检查 java- 的任何其他文件,然后重新安装它们。
sudo ls /etc/apt/sources.list.d/
# check for extra java.list files and remove
# as stated above - be sure your pervious install postinst is rm
sudo rm /var/lib/dpkg/info/oracle-java8-installer.postinst -f
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
# test it to be dpkg is happy
sudo dpkg --configure -a
sudo apt-get install oracle-java8-installer
然后它会告诉你 java9 现在是稳定的默认版本。如果你特别需要 java8(例如 elk stack 上的 wazuh),那么你必须指定系统要使用的默认 java 版本。
sudo apt-get install oracle-java8-set-default
请告诉我们您是否解决了这个问题以及如何解决?