IntelliJ-生成的JPA元模型的Java编译器错误

时间:2018-07-26 07:39:56

标签: java jpa intellij-idea

我正在使用gradle为我的实体生成元模型类。

plugins {
    id "at.comm_unity.gradle.plugins.jpamodelgen" version "1.1.4"
}

jpaModelgen {
    library = "org.hibernate:hibernate-jpamodelgen:5.3.3.Final"
    jpaModelgenSourcesDir = "src/jpaModelgen/java"
}

sourceSets.main.java.srcDir file("src/jpaModelgen/java")

gradle build可以正常工作并且可以编译,但是在IntelliJ下,当我尝试构建项目时,它为生成的类提供了一些错误。在构建所有元模型类时,存在以下问题: error: package javax.persistence.metamodel does not existerror: cannot find symbol class XXXX

一个奇怪的事情是,即使在我打开此类后编译器标记了错误,导入或包也没有问题。我该怎么做才能使构建有效?

1 个答案:

答案 0 :(得分:0)

我将build.gradle更改为:

apply plugin: 'idea'

dependencies {
    compile group: 'org.hibernate', name: 'hibernate-jpamodelgen', version: '5.3.3.Final'
}

idea {
   module {
       sourceDirs += file("build/generated/src/main/java")
   }
}

它现在可以正常工作了。