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

Manjaro编译安装Elasticsearch时Java版本异常问题求助

解决Manjaro下编译AUR Elasticsearch时Java版本不符问题

问题分析

系统全局Java版本显示为19,但makepkg编译时检测到的是Java11,即使已安装Java17。核心原因是Arch/Manjaro系统默认Java版本未切换到17,或makepkg运行环境未加载正确的Java路径。

解决步骤

  • 查看已安装的Java版本列表
    执行以下命令确认系统中已安装的Java环境:

    archlinux-java status
    

    输出示例:

    Available Java environments:
      java-11-openjdk
      java-17-openjdk (default)
      java-19-openjdk
    
  • 切换默认Java版本到17
    如果java-17-openjdk未标记为(default),执行切换命令:

    sudo archlinux-java set java-17-openjdk
    
  • 验证切换结果
    关闭当前终端重新打开,或执行命令刷新环境变量:

    source /etc/profile
    

    然后验证Java版本,确保两者均显示为Java 17.x.x:

    java --version
    javac --version
    
  • 重新执行编译命令
    回到Elasticsearch的AUR仓库目录,重新运行:

    makepkg -si
    

额外排查点

  • 确认jdk17-openjdk已正确安装,可通过pacman -Q jdk17-openjdk验证。
  • 查看Elasticsearch的PKGBUILD文件,确认是否存在硬编码的Java路径(通常AUR包不会这么做,但可打开PKGBUILD搜索JAVA_HOME相关配置)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 08:15:35