Ubuntu16安装Subclipse致Eclipse Oxygen2崩溃无法启动求助
排查Eclipse Oxygen 2在Ubuntu 16上崩溃及启动失败的问题
先梳理下你的核心问题:安装Subclipse插件后Eclipse直接崩溃,后续启动弹出JVM terminated. Exit code=1,日志里还有Launchbar相关的警告。咱们从最可能的根源开始排查:
1. JDK版本兼容性问题(最核心原因)
Eclipse Oxygen 2发布时,JDK 9的模块化系统(JPMS)还处于初期,Oxygen对JDK 9的支持非常不完善——你启动参数里的--add-modules=ALL-SYSTEM就是JDK 9的专属参数,这大概率是导致JVM崩溃的直接原因。
解决步骤:
- 安装JDK 8:Ubuntu 16的软件仓库里有稳定的OpenJDK 8,执行以下命令安装:
sudo apt update && sudo apt install openjdk-8-jdk - 修改Eclipse启动配置:找到Eclipse安装目录下的
eclipse.ini文件,做以下调整:- 找到
-vm行,将其指向JDK 8的java可执行文件路径,比如:-vm /usr/lib/jvm/java-8-openjdk-amd64/bin/java - 删除所有
--add-modules=ALL-SYSTEM参数(JDK 8不需要这个模块化参数) - 确保只保留一次
-Dosgi.requiredJavaVersion=1.8参数(你的启动参数里重复了两次,可能引发冲突)
- 找到
2. Subclipse插件兼容性问题
Subclipse的版本需要和Eclipse版本严格匹配,Oxygen 2对应的Subclipse版本应该是1.10.x系列,如果安装了过高版本的Subclipse,会和Eclipse Oxygen的核心组件冲突导致崩溃。
解决步骤:
- 清理损坏的插件:如果用JDK 8能成功启动Eclipse,直接在
帮助 > 安装新软件 > 已安装的软件里卸载Subclipse;如果还是启动不了,手动删除插件:- 进入Eclipse安装目录下的
dropins文件夹,删除所有和Subclipse相关的jar包 - 备份你的工作区后,删除用户目录下
.eclipse文件夹中对应Oxygen的配置子目录(避免残留的插件配置干扰)
- 进入Eclipse安装目录下的
- 重新安装适配版本的Subclipse:启动Eclipse后,从Subclipse的官方更新站点选择1.10.x版本的插件进行安装,不要勾选最新的不兼容版本。
3. 启动参数冗余与冲突
你的启动日志里重复出现了-Dosgi.requiredJavaVersion=1.8和--add-modules=ALL-SYSTEM,这种冗余参数可能导致JVM启动时出现未知冲突。
解决步骤:
打开eclipse.ini,整理参数确保:
- 只存在一次
-Dosgi.requiredJavaVersion=1.8 - 移除所有JDK 9专属参数
- 内存参数
-Xms256m -Xmx1024m保持默认即可,不需要调整(除非后续出现内存不足问题)
4. 日志中Launchbar警告的说明
日志里的Enablement expression is missing警告来自CDT的Launchbar组件,属于次要问题,不会直接导致Eclipse崩溃。在解决完JDK和Subclipse的问题后,如果警告仍然存在,可以尝试更新CDT插件到Eclipse Oxygen对应的最新版本即可消除。
内容的提问来源于stack exchange,提问作者vico
相关产品推荐
相关产品推荐

