You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Fedora 37 Docker镜像中安装Java 11.0.21版本?

解决Fedora 37 Docker镜像中安装Java 11.0.21的问题

错误原因

你遇到的依赖冲突,是因为java-11-openjdk-devel必须依赖完全同版本的java-11-openjdk主包,但你仅单独安装了高版本的devel包,系统中现存的主包是11.0.20版本,版本不匹配导致依赖缺失。

解决方案

推荐方案:临时启用updates-testing仓库安装指定版本

Java 11.0.21这个版本属于Fedora 37的updates-testing仓库,直接临时启用该仓库即可安装指定版本的主包和devel包,无需手动下载RPM:

RUN set -ex; \
    # 临时启用updates-testing仓库,安装指定版本的Java包
    dnf install -y --enablerepo=updates-testing java-11-openjdk-1:11.0.21.0.9-1.fc37 java-11-openjdk-devel-1:11.0.21.0.9-1.fc37

备选方案:手动下载匹配版本的RPM包安装

如果无法启用updates-testing仓库,可手动获取同版本的java-11-openjdk主包与devel包,一并安装:

RUN set -ex; \
    # 下载同版本的java-11-openjdk主包和devel包(从Fedora官方仓库渠道获取对应RPM)
    wget -nv -O /tmp/java-11-openjdk.rpm "获取到的对应版本主包RPM路径"; \
    wget -nv -O /tmp/java-11-openjdk-devel.rpm "获取到的对应版本devel包RPM路径"; \
    # 同时安装两个包,解决依赖问题
    dnf install -y /tmp/java-11-openjdk.rpm /tmp/java-11-openjdk-devel.rpm; \
    # 清理临时文件
    rm -f /tmp/java-11-openjdk.rpm /tmp/java-11-openjdk-devel.rpm

验证安装结果

安装完成后,执行以下命令确认版本是否正确:

java -version
javac -version

输出信息中应显示版本为11.0.21。

内容的提问来源于stack exchange,提问作者hitesh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 00:15:22