Как сгенерировать метамодель JPA с помощью Gradle 5.x - PullRequest
0 голосов
/ 16 января 2019

В настоящее время я пытаюсь выполнить обновление с версии 4.8.1 до 5.1.1, но не могу создать метамодель гибернации для нашего кода.

Проблема в том, что Gradle 5 игнорирует процессор аннотаций, переданный с помощью пути к классам компиляции, но все плагины, которые я обнаружил, используют это (т.е. "-proc:only").

Я попытался указать процессор аннотаций явно, как указано gradle (https://docs.gradle.org/4.6/release-notes.html#convenient-declaration-of-annotation-processor-dependencies) annotationProcessor 'org.hibernate:hibernate-jpamodelgen'

Но это не помогает, и я все еще получаю следующую ошибку:

предупреждение: обработка аннотации без запроса на компиляцию, но процессоры не найдены.

Возможно, плагины также необходимо обновить, но, как я сказал, все плагины, которые я обнаружил, передают процессор аннотаций с classpath. В настоящее время мы используем это: https://github.com/Catalysts/cat-gradle-plugins/tree/master/cat-gradle-hibernate-plugin

1 Ответ

0 голосов
/ 28 января 2019

вы можете просто удалить плагин для jpa modelgen и просто использовать

annotationProcessor('org.hibernate:hibernate-jpamodelgen:<version>')

Дополнительно я использую эти настройки для настройки места хранения сгенерированного кода.

tasks.withType(JavaCompile) {
  options.annotationProcessorGeneratedSourcesDirectory = file("src/generated/java")
}


sourceSets {
    generated {
        java {
            srcDirs = ['src/generated/java']
        }
    }
}
...