java - Eclipse 无法创建注释处理器 org.hibernate.jpamodelgen.JPAMetaModelEntityProcessor 的实例
问题描述
我有一个在 Eclipse 中启用了 Hibernate 注释和注释处理的项目。
一旦我切换到 JAVA 11 Open JDK,注释处理就不起作用了。
以下是完整的错误:
eclipse.buildId=4.10.0.I20181206-0815
java.version=11.0.1
java.vendor=Oracle Corporation
BootLoader constants: OS=macosx, ARCH=x86_64, WS=cocoa, NL=en_GB
Framework arguments: -product org.eclipse.epp.package.jee.product -keyring /Users/shamalk/.eclipse_keyring
Command-line arguments: -os macosx -ws cocoa -arch x86_64 -product org.eclipse.epp.package.jee.product -keyring /Users/shamalk/.eclipse_keyring
org.eclipse.jdt.apt.pluggable.core
Error
Fri Dec 28 18:03:24 MYT 2018
Unable to create instance of annotation processor org.hibernate.jpamodelgen.JPAMetaModelEntityProcessor
java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException
at org.hibernate.jpamodelgen.xml.JpaDescriptorParser.<init>(JpaDescriptorParser.java:77)
at org.hibernate.jpamodelgen.JPAMetaModelEntityProcessor.init(JPAMetaModelEntityProcessor.java:116)
at org.eclipse.jdt.internal.apt.pluggable.core.dispatch.IdeAnnotationProcessorManager.discoverNextProcessor(IdeAnnotationProcessorManager.java:97)
at org.eclipse.jdt.internal.compiler.apt.dispatch.RoundDispatcher.round(RoundDispatcher.java:119)
at org.eclipse.jdt.internal.compiler.apt.dispatch.BaseAnnotationProcessorManager.processAnnotations(BaseAnnotationProcessorManager.java:171)
at org.eclipse.jdt.internal.apt.pluggable.core.dispatch.IdeAnnotationProcessorManager.processAnnotations(IdeAnnotationProcessorManager.java:138)
at org.eclipse.jdt.internal.compiler.Compiler.processAnnotations(Compiler.java:940)
at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:450)
at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:426)
at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile(AbstractImageBuilder.java:386)
at org.eclipse.jdt.internal.core.builder.BatchImageBuilder.compile(BatchImageBuilder.java:214)
at org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile(AbstractImageBuilder.java:318)
at org.eclipse.jdt.internal.core.builder.BatchImageBuilder.build(BatchImageBuilder.java:79)
at org.eclipse.jdt.internal.core.builder.JavaBuilder.buildAll(JavaBuilder.java:264)
at org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:193)
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:833)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:220)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:263)
at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:316)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:319)
at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:371)
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:392)
at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:154)
at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:244)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
Caused by: java.lang.ClassNotFoundException: javax.xml.bind.JAXBException
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:471)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:588)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
... 27 more
我尝试将以下 JAXB 库作为解决方案添加到我的项目中,但没有成功,但不确定 eclipse 注释处理器是否引用项目类路径以获取它的依赖项。
任何帮助表示赞赏。
解决方案
推荐阅读
- javascript - 无法使背景图像响应
- xml - Android Studio 应用程序未读取 pdf,活动打开为空
- python - python:如何比较 doc A 和 doc B,如果找到与 doc B 匹配的字符串,如何打印整行?
- flutter - 重新访问子页面时出现颤振错误
- c# - Serilog 请求日志记录在事件日志中结束
- python - 更改 x 刻度的字体?
- drupal - Drupal 批处理在 preventDefault 上被 jquery 对话框破坏
- powershell - Powershell 数组、函数和参考
- c++ - 使用指针的 C++ 链表 - 初学者问题
- javascript - Blazor - 加载和渲染 DOM 后应用 JS 的正确方法