Eclipse启动报错:org.eclipse.e4.core.di.InjectionException: java.lang.NoClassDefFoundError: javax/annotat

简介: Eclipse启动报错:org.eclipse.e4.core.di.InjectionException: java.lang.NoClassDefFoundError: javax/annotat

启动 Eclipse 的时候,出现了下面这个错误 org.eclipse.e4.core.di.InjectionException: java.lang.NoClassDefFoundError: javax/annotation/PostConstruct

image.png



看了一下日志,错误信息大致是


!ENTRY org.eclipse.core.resources 2 10035 2020-01-01 10:06:57.045
!MESSAGE The workspace will exit with unsaved changes in this session.
!SESSION 2020-01-01 10:06:58.748 -----------------------------------------------
eclipse.buildId=4.7.3.M20180330-0640
java.version=13.0.1
java.vendor=Oracle Corporation
BootLoader constants: OS=macosx, ARCH=x86_64, WS=cocoa, NL=zh_CN_#Hans
Framework arguments:  -product org.eclipse.epp.package.jee.product -keyring /Users/maweiqing/.eclipse_keyring
Command-line arguments:  -os macosx -ws cocoa -arch x86_64 -product org.eclipse.epp.package.jee.product -keyring /Users/maweiqing/.eclipse_keyring
!ENTRY org.eclipse.core.resources 2 10035 2020-01-01 10:07:06.932
!MESSAGE The workspace exited with unsaved changes in the previous session; refreshing workspace to recover changes.
!ENTRY org.eclipse.osgi 4 0 2020-01-01 10:07:07.087
!MESSAGE Application error
!STACK 1
org.eclipse.e4.core.di.InjectionException: java.lang.NoClassDefFoundError: javax/annotation/PostConstruct
  at org.eclipse.e4.core.internal.di.InjectorImpl.internalMake(InjectorImpl.java:410)
  at org.eclipse.e4.core.internal.di.InjectorImpl.make(InjectorImpl.java:318)
  at org.eclipse.e4.core.contexts.ContextInjectionFactory.make(ContextInjectionFactory.java:162)
  at org.eclipse.e4.ui.internal.workbench.swt.E4Application.createDefaultHeadlessContext(E4Application.java:491)
  at org.eclipse.e4.ui.internal.workbench.swt.E4Application.createDefaultContext(E4Application.java:505)
  at org.eclipse.e4.ui.internal.workbench.swt.E4Application.createE4Workbench(E4Application.java:204)



注意到里面的关键信息 java.version=13.0.1,也就是说本地环境的 JDK 升级了,因为这个导致了一些错误。


再打开 Eclipse 的 .ini 文件看了一下(找到 Eclipse 的启动图标,在访达中显示,右键显示包内容)。


image.png


看到了 JDK 1.8 的信息。

image.png



再打开终端,输入 java -version


image.png


原来真的是因为 JDK 的版本冲突造成的,怎么办呢?


查看下电脑上有安装了哪些 JDK


/usr/libexec/java_home -V



好多版本哦,那就为 Eclipse 指定 1.8 的版本吧。


-vm

/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/bin


位置呢?

image.png



保存 eclipse.ini 文件后,再启动 Eclipse,就大功告成了。


相关文章
|
2月前
|
Android开发
复杂项目即时通讯从android 5升级android x后遗症之解决报错#79 java.io.EOFException Unexpected end of ZLIB input stream-优雅草卓伊凡|bigniu
复杂项目即时通讯从android 5升级android x后遗症之解决报错#79 java.io.EOFException Unexpected end of ZLIB input stream-优雅草卓伊凡|bigniu
131 4
复杂项目即时通讯从android 5升级android x后遗症之解决报错#79 java.io.EOFException Unexpected end of ZLIB input stream-优雅草卓伊凡|bigniu
|
24天前
|
Java API 开发工具
【Azure Developer】Java代码实现获取Azure 资源的指标数据却报错 "invalid time interval input"
在使用 Java 调用虚拟机 API 获取指标数据时,因本地时区设置非 UTC,导致时间格式解析错误。解决方法是在代码中手动指定时区为 UTC,使用 `ZoneOffset.ofHours(0)` 并结合 `withOffsetSameInstant` 方法进行时区转换,从而避免因时区差异引发的时间格式问题。
120 4
|
8天前
|
分布式计算 Java Hadoop
java使用hbase、hadoop报错举例
java使用hbase、hadoop报错举例
50 6
|
7月前
|
运维 Cloud Native Java
postman发起post请求遇到报错:java.io.FileNotFoundException (文件名、目录名或卷标语法不正确。)
遇到bug报错,多猜可能的原因,控制变量反复测试,直至找到问题的关键,然后再思考如何解决或者回避。 博客不应该只有代码和解决方案,重点应该在于给出解决方案的同时分享思维模式,只有思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来
|
10月前
|
Java Maven
java项目中jar启动执行日志报错:no main manifest attribute, in /www/wwwroot/snow-server/z-server.jar-jar打包的大小明显小于正常大小如何解决
在Java项目中,启动jar包时遇到“no main manifest attribute”错误,且打包大小明显偏小。常见原因包括:1) Maven配置中跳过主程序打包;2) 缺少Manifest文件或Main-Class属性。解决方案如下:
2325 8
java项目中jar启动执行日志报错:no main manifest attribute, in /www/wwwroot/snow-server/z-server.jar-jar打包的大小明显小于正常大小如何解决
|
9月前
|
Java Windows
【Azure Function】部署Java Function失败:报错deploy [ERROR] Status code 401和警告 'China North 3' may not be a valid region
1:deploy [ERROR] Status code 401, (empty body). 2: China North 3 may not be a valid region,please refer to https://aka.ms/maven_function_configuration#supported-regions for values. 3:  <azure.functions.maven.plugin.version>1.36.0</azure.functions.maven.plugin.version>
132 11
|
11月前
|
JSON Java 关系型数据库
Java更新数据库报错:Data truncation: Cannot create a JSON value from a string with CHARACTER SET 'binary'.
在Java中,使用mybatis-plus更新实体类对象到mysql,其中一个字段对应数据库中json数据类型,更新时报错:Data truncation: Cannot create a JSON value from a string with CHARACTER SET 'binary'.
1120 4
Java更新数据库报错:Data truncation: Cannot create a JSON value from a string with CHARACTER SET 'binary'.
|
11月前
|
Java Android开发
Eclipse Java 构建路径
Eclipse Java 构建路径
136 3
|
11月前
|
Java Android开发
Eclipse 创建 Java 项目
Eclipse 创建 Java 项目
134 4
|
11月前
|
Java Android开发
Eclipse 创建 Java 接口
Eclipse 创建 Java 接口
104 1

推荐镜像

更多