Java Hibernate JPAModelGen 5.4.6.Final在JDK11上失败

Java Hibernate JPAModelGen 5.4.6.Final在JDK11上失败,java,hibernate,maven,java-11,jpamodelgen,Java,Hibernate,Maven,Java 11,Jpamodelgen,在将JDK升级到11并出现错误后,我无法构建JPA2项目,找不到符号。我查过了,包名在11个月内发生了变化。例如: 已生成的文件不再位于: javax.annotation 现在,它在: javax.annotation.processing 我已经升级到hibernate jpamodelgen的最新版本(5.4.6.Final)和maven处理器插件的最新版本(3.3.3) 但是,它们似乎还不支持JDK11。准确吗?我切换到JDK10,这解决了JPA model gen的构建问题。与此同

在将JDK升级到11并出现错误后,我无法构建JPA2项目,找不到符号。我查过了,包名在11个月内发生了变化。例如:

已生成的文件不再位于:

javax.annotation
现在,它在:

javax.annotation.processing
我已经升级到hibernate jpamodelgen的最新版本(5.4.6.Final)和maven处理器插件的最新版本(3.3.3)


但是,它们似乎还不支持JDK11。准确吗?

我切换到JDK10,这解决了JPA model gen的构建问题。与此同时,我正在向Hibernate提交一份错误报告

注意,我必须依赖jsr250:

<dependency>
  <groupId>javax.annotation</groupId>
  <artifactId>jsr250-api</artifactId>
  <version>1.0</version>
</dependency>

javax.annotation

我对JPA一无所知,但如果找不到javax.annotation.Generated,则表明您的类路径缺少JSR-250通用注释。在JavaSE11之前,JavaSE确实定义了JavaEE定义的API的一个子集,但是它已经被删除了(自9年以来就不推荐删除)。依赖于提供这些注释的JDK的现有代码需要下载所谓“公共注释”的独立版本,并将其放在类路径上。这不是问题,问题是生成的源代码引用的是javax.annotation.processing.Generated
,使生成或使用
@生成的
注释的工具/代码更容易,但不需要
javax.annotation
包中任何其他JSR-250和Java EE定义的注释。当JSR-250注释部署在类路径上时,您将同时拥有这两个注释。在Hibernate问题跟踪器中兑现这一点似乎是正确的。好吧,你是对的,这里有一个指向两者的链接:而且,实际上Hibernate的JPA2 ModelGen即使在技术上也不支持JDK9,它只是碰巧起作用,因为从我所知,这就是它的全部用途(标记)。