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

升级至OpenJDK 11后Eclipse RCP应用Ant构建插件依赖异常求助

解决Eclipse RCP升级到OpenJDK11后Ant构建的Lucene依赖问题

你遇到的这个问题,本质是Eclipse Neon(4.6)与OpenJDK11的兼容性差异,叠加AERI日志插件的特定版本依赖要求导致的:Neon是面向Java8设计的Eclipse版本,它的原生插件生态对Java11支持有限,而org.eclipse.epp.logging.aeri.ide插件明确要求Lucene 7.1.0~8.0.0之间的包,但Neon自带的Lucene版本大概率低于这个范围。

下面给你几个按优先级排序的可行解决方案:

1. 升级Eclipse平台到支持Java11的版本

这是最彻底的解决办法。Eclipse从2018-09版本开始正式支持Java11,后续稳定版本对Java11的兼容性更完善。升级后,平台自带的插件(包括AERI)会适配Java11,且内置符合版本要求的Lucene依赖,从根源上消除依赖缺失问题。

操作要点:

  • 下载对应版本的Eclipse SDK(比如2018-09或更新的LTS版)
  • 调整Ant构建脚本中指向Eclipse安装目录的路径,确保构建时使用新平台
  • 同步验证RCP应用其他插件对新Eclipse版本的兼容性,必要时更新相关插件

2. 手动补充符合版本要求的Lucene依赖包

如果暂时无法升级Eclipse平台,可以手动引入适配的Lucene包来满足AERI插件的依赖:

  • 下载Lucene 7.x系列稳定版本(比如7.7.3,严格在[7.1.0,8.0.0)范围内)的以下模块jar包:
    • lucene-core-x.x.x.jar
    • lucene-document-x.x.x.jar
    • lucene-index-x.x.x.jar
    • lucene-search-x.x.x.jar
    • lucene-store-x.x.x.jar
  • 将这些jar包添加到RCP项目的依赖库,或在Ant构建脚本中配置它们的路径,确保构建过程能加载到这些依赖
  • 注意不要使用8.x及以上版本的Lucene,否则仍会触发版本不匹配的错误

3. 移除不必要的AERI插件依赖

如果你的RCP应用不需要EPP自带的错误报告功能,可以直接移除这个插件的依赖:

  • 在RCP产品配置文件(.product)中找到org.eclipse.epp.logging.aeri.ide,取消勾选
  • 检查所有关联的feature、plugin配置文件,确保没有引用该插件
  • 重新运行Ant构建,确认依赖问题消失

另外补充一点:OpenJDK11和Java8在模块系统(JPMS)上有差异,记得调整Ant构建脚本中的编译参数,将source和target设置为11,若应用涉及模块开发,也要同步处理模块相关配置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.13 07:23:43