问题描述:
在win11的wsl下通过apt安装jdk包时遇到了下列问题
# 执行这个安装命令
sudo apt-get install openjdk-8-jdk
# 结果提示无法找到对应的安装包
E: Unable to locate package openjdk-8-jdk
wsl下的镜像源配置在早些时侯已更换为清华镜像源,按理来说应该是可以获取到大多数package的。网上对于wsl无法安装package主要有以下三种解决方案:
- 添加私人的ppa仓库来安装
- 去网上找到对应jdk的压缩包,拉到wsl里面去解压
- 下载源码手动编译
试了第一种方法仍然不成功,至于第二、第三种方法则有点繁琐,没有尝试
解决方法:
apt找不到package,很有可能是镜像源配置有问题。带着疑惑,我打开了debian清华镜像源的网站
网站导航
发现不同的debian版本对应的镜像源配置是不一样的,而我配置的是默认的buster版的镜像源。莫非是我的debian版本不是buster?
带着疑惑,查看了一下wsl对应的版本
# 查看debian版本
cat /etc/debian_version
输出
果不其然,我的debian是bullseye/sid版本
选择对应版本的镜像源替换原有的配置,再次执行安装jdk命令。成功!
总结:
若使用ubuntu/wsl的时候无法通过apt安装某些package,可检查下镜像源配置是否与系统对应debian版本相对应。将两者保持一致后便可正常安装。