Проблема с использованием метода isMember от CriteriaBuilder в Kotlin

#spring-boot #kotlin #criteria #hibernate-criteria #criteria-api

Вопрос:

При использовании метода isMember программы CriteriaBuilder с Kotlin в моем приложении я получаю следующую ошибку в следующей строке:

введите описание изображения здесь

Я исследовал, и они всегда используют эту форму, чтобы добавить предикат для фильтрации, когда им нужно отфильтровать список элементов сущности.

Вы знаете, что может произойти?

Спасибо.

Ответ №1:

Content_ -подобные классы генерируются из соответствующих @Entity классов. Вам нужно включить плагин, который выполняет эту работу во время сборки. С Maven это можно было бы сделать следующим образом:

 <build>
    ...
    <plugins>
        ...
        <plugin>
            <groupId>org.bsc.maven</groupId>
            <artifactId>maven-processor-plugin</artifactId>
            <version>3.1.0</version>
            <executions>
                <execution>
                    <id>process</id>
                    <goals>
                        <goal>process</goal>
                    </goals>
                    <phase>generate-sources</phase>
                    <configuration>
                        <processors>
                            <processor>org.hibernate.jpamodelgen.JPAMetaModelEntityProcessor</processor>
                        </processors>
                    </configuration>
                </execution>
            </executions>
            <dependencies>
                <dependency>
                    <groupId>org.hibernate</groupId>
                    <artifactId>hibernate-jpamodelgen</artifactId>
                    <version>${hibernate.version}</version>
                </dependency>
            </dependencies>
        </plugin>
        ...
    </plugins>
    ...
</build>
 

После перестройки Content_ (и все подобные классы) должны появиться в пути к классам