代码之家  ›  专栏  ›  技术社区  ›  ByeBye

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

  •  0
  • ByeBye  · 技术社区  · 7 年前

    我正在使用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 exist error: cannot find symbol class XXXX .

    奇怪的是,即使编译器在我打开这个类后标记了错误,导入和包也没有问题。如何使生成有效?

    1 回复  |  直到 7 年前
        1
  •  0
  •   ByeBye    7 年前

    我将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")
       }
    }
    

    现在一切正常。