当前位置: 首页 > backend >正文

JVM terminated. Exit code=1

出现JVM terminated. Exit code=1错误通常是因为 Eclipse 所需的 Java 版本与系统中配置的 Java 版本不匹配。从错误信息中可以看到关键线索:-Dosgi.requiredJavaVersion=21,表示此 Eclipse 版本需要 Java 21 或更高版本,但系统当前使用的是 Java 11(路径为/usr/lib/jvm/java-11-openjdk-amd64/bin/java)。

解决方案:

以下是详细解决步骤:


1. 安装 Java 21
  • 打开终端,运行以下命令安装 OpenJDK 21:
    sudo apt update
    sudo apt install openjdk-21-jdk
    

2. 配置 Eclipse 使用 Java 21
  • 修改 eclipse.ini 文件
    在 Eclipse 安装目录(如 /opt/eclipse/)中找到 eclipse.ini 文件,在 -vmargs 之前添加以下两行,指定 Java 21 的路径:
    -vm
    /usr/lib/jvm/java-21-openjdk-amd64/bin/java
    
    修改后的示例(关键部分):
    ...
    -startup
    plugins/org.eclipse.equinox.launcher_1.7.0.v20250519-0528.jar
    --launcher.appendVmargs
    -vm  # 添加这一行
    /usr/lib/jvm/java-21-openjdk-amd64/bin/java  # 添加这一行
    -vmargs
    ...
    

3. 验证 Java 版本
  • 在终端检查 Java 21 是否安装成功:
    java -version
    
    输出应类似:
    openjdk version "21.0.3" 2024-04-16
    OpenJDK Runtime Environment (build 21.0.3+9-Ubuntu-1ubuntu1)
    OpenJDK 64-Bit Server VM (build 21.0.3+9-Ubuntu-1ubuntu1, mixed mode)
    

4. 可选:设置系统默认 Java 版本

如果仍存在问题,将 Java 21 设为系统默认:

sudo update-alternatives --config java

选择与 Java 21 对应的编号(如 /usr/lib/jvm/java-21-openjdk-amd64/bin/java)。


5. 清理临时文件

删除 Eclipse 旧配置和缓存(谨慎操作,会重置工作区设置):

rm -r ~/.eclipse  # 删除配置缓存
rm -r /tmp/eclipse*  # 删除临时文件

6. 重新启动 Eclipse
  • 双击图标或通过终端启动:
    /opt/eclipse/eclipse
    

常见问题排查:

  • 权限问题:确保 Eclipse 安装目录有读写权限(sudo chmod -R a+rw /opt/eclipse)。
  • 版本冲突:如果安装了多个 Java 版本,在 eclipse.ini 中显式指定 Java 21 路径是关键。
  • 日志分析:查看 Eclipse 错误日志(位于工作区目录 ~/eclipse-workspace/.metadata/.log)获取具体错误。

原因总结
此错误是由于 Eclipse 2023-12 (4.30) 及更高版本需要 Java 17+,而您使用的 Eclipse 明确要求 Java 21。升级 Java 并正确配置后即可解决。

http://www.xdnf.cn/news/16422.html

相关文章:

  • 最优估计准则与方法(6)递推最小二乘估计(RLS)_学习笔记
  • BeautifulSoup 使用详解与实战示例
  • 单链表的冒泡排序实现:从原理到代码详解
  • Windows 11 Qt 5.15.x 源码编译,支持C++20
  • MySQL进阶学习与初阶复习第四天
  • Canvas实现微信小程序图片裁剪组件全攻略
  • 在docker中安装frp实现内网穿透
  • Ubuntu简述及部署系统
  • 负载均衡 LoadBalance
  • web刷题
  • c++11--static_assert
  • Linux->自定义shell
  • FPGA IP升级
  • 网络服务综合项目
  • Oracle 数据库报 ora-00257 错误并且执行alter system switch logfile 命令卡死的解决过程
  • XSS利用
  • 02人工智能中优雅草商业实战项目视频字幕翻译以及声音转译之以三方AI模型API制作方式预算-卓伊凡|莉莉
  • linux 板卡实现vxi11服务
  • 阿里 Qwen3 四模型齐发,字节 Coze 全面开源,GPT-5 8 月初发布!| AI Weekly 7.21-7.27
  • 初识 docker [上]
  • 《 接口日志与异常处理统一设计:AOP与全局异常捕获》
  • P图太假?AI一键融入背景!
  • vLLM 的“投机取巧”:Speculative Decoding 如何加速大语言模型推理
  • 【优选算法】BFS解决FloodFill算法
  • 零基础学习性能测试第五章:JVM性能分析与调优-GC垃圾分代回收机制与优化
  • 死锁出现的原因
  • 《计算机组成原理与汇编语言程序设计》实验报告四 Debug及指令测试
  • #影·数学计划# N1 一元一次方程讲解 未完待续
  • 基于STM32的智能康养木屋监测系统
  • vector使用和模拟