使用hibernate jpamodelgen优化gradle中的hibernate元模型生成

使用hibernate jpamodelgen优化gradle中的hibernate元模型生成,hibernate,jpa,gradle,metamodel,incremental-build,Hibernate,Jpa,Gradle,Metamodel,Incremental Build,Hibernate Jpamodelgen包是一个注释处理器/代码生成器,在JPA@Entity类上运行。在使用JPA标准查询的应用程序中经常需要它 Gradle提供了一种“增量编译”模式,但必须更新插件才能支持这种模式。从5.4.2.Final版本开始,JpaModelGen尚未更新以提供该支持,这意味着无论何时执行:compile任务,项目中的所有源文件都将重新编译 我们所有的@Entity类都在一个包中,根目录下有5个级别 我们正在寻找一种划分应用程序的方法,以便@Entities 由Jp

Hibernate Jpamodelgen包是一个注释处理器/代码生成器,在JPA@Entity类上运行。在使用JPA标准查询的应用程序中经常需要它

Gradle提供了一种“增量编译”模式,但必须更新插件才能支持这种模式。从5.4.2.Final版本开始,JpaModelGen尚未更新以提供该支持,这意味着无论何时执行:compile任务,项目中的所有源文件都将重新编译

我们所有的@Entity类都在一个包中,根目录下有5个级别

我们正在寻找一种划分应用程序的方法,以便@Entities 由JpaModelGen正确扫描,但应用程序的其余部分仍然能够支持增量编译/构建

环境:

------------------------------------------------------------
Gradle 5.4
------------------------------------------------------------

Build time:   2019-04-16 02:44:16 UTC

Kotlin:       1.3.21
Groovy:       2.5.4
Ant:          Apache Ant(TM) version 1.9.13 compiled on July 10 2018
JVM:          11.0.1 (Oracle Corporation 11.0.1+13)
OS:           Windows 10 10.0 amd64
gradle.build文件例外:

annotationProcessor "org.springframework.boot:spring-boot-configuration-processor:2.1.4.RELEASE"

compileOnly "org.hibernate:hibernate-jpamodelgen:5.4.2.Final"
testCompileOnly "org.hibernate:hibernate-jpamodelgen:5.4.2.Final"
gradle——信息类
输出摘录:

Full recompilation is required because org.hibernate.jpamodelgen.JPAMetaModelEntityProcessor is not incremental. 

更新:我们越来越悲观地认为这样一个分区对于我们的应用程序来说是成功的,因为实体引用了我们模型包之外的对象,所以它们无法被编译,并且在没有访问其余应用程序类的情况下无法生成代码


最终,解决方案似乎是更新jpa模型生成器以支持渐变增量模式

小而快速的档案回复。 我面临着完全相同的问题,但事实证明,jpamodelgen中支持gradle增量编译器的修复非常简单


该问题现已解决,该修复程序将包含在即将发布的5.4.11版中,该版本将为存档提供小型快速回复。 我面临着完全相同的问题,但事实证明,jpamodelgen中支持gradle增量编译器的修复非常简单

该问题现已解决,修复程序将包含在即将发布的5.4.11版中

Hibernate问题:Hibernate问题: