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

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.lryc.cn/news/601659.html

相关文章:

  • 通俗理解主机的BIOS和UEFI启动方式
  • SpringBoot 整合 Langchain4j AIService 深度使用详解
  • uniapp input 聚焦时键盘弹起滚动到对应的部分
  • Python入门构建网页
  • Python爬虫实战:研究netaddr库相关技术构建IP地址信息采集分析系统
  • r0env2024:开箱即用的AI工具集成Kali发新版
  • Java学习-------外观模式
  • 不坑盒子:Word里1秒制作“花括号”题目,多音字组词、形近字组词……
  • J3160迷你小主机 性能测试 对比i3-4170 以及服务器
  • 【Linux | 网络】传输层(UDP和TCP)
  • Word和WPS文字如何制作分栏试卷?想分几栏分几栏
  • 使用uni-app开发一个点餐收银台系统前端静态项目练习
  • Netty中 ? extends Future<? super V>这种的写法的理解
  • 使用GPU训练模型
  • MyBatis-Plus高效开发实战
  • 关于GRPC的相关知识。
  • 编程语言Java——核心技术篇(五)IO流:数据洪流中的航道设计
  • 点击劫持:潜藏在指尖的安全陷阱
  • 【Unity3D实例-功能-移动】角色移动-通过WSAD(Transform方式)
  • 《频率之光:共振之恋》
  • 益莱储:明智地投资测试仪器
  • 数据结构的基本知识
  • [STM32][HAL]stm32wbxx 超声波测距模块实现(HY-SRF05)
  • 深度学习在计算机视觉中的应用:对象检测
  • Java面试全栈通关:从微服务到AI的技术深度解析
  • 市电有电检测电路
  • elasticsearch 倒排索引原理详解
  • 湖南(源点咨询)市场调研 如何在行业研究中快速有效介入 起头篇
  • 一场关于电商零售增长破局的深圳探索
  • Python类(class)参数self的理解