Jigsaw @SpringBootApplication не может создать ClassInfo для сущностей Neo4j - PullRequest
0 голосов
/ 25 июня 2019

Я пытаюсь запустить пример Spring для доступа к данным с Neo4j (https://spring.io/guides/gs/accessing-data-neo4j).. Это работает. Но когда я помещаю его в среду Jigsaw (это то, что мне действительно нужно для работы в нашем проекте) и добавить module-info.java, классы сущностей не найдены (карта classInfos в org.neo4j.ogm.metadata.MetaData содержит нулевые значения для объектов ClassInfo).

Я пытался использовать @EntityScan и @Bean для настройки пользовательского Neo4j SessionFactory с пакетом пути к объектам - проблема остается прежней.

Код как в https://spring.io/guides/gs/accessing-data-neo4j. Я изменил только версию Java на 12 в pom.xml:

<properties>
    <maven.compiler.source>12</maven.compiler.source>
    <maven.compiler.target>12</maven.compiler.target>
</properties>

И добавил модуль-info.java:

open module neo4j {
    requires spring.boot.autoconfigure;
    requires spring.data.neo4j;
    requires slf4j.api;
    requires spring.context;
    requires spring.boot;
    requires org.neo4j.ogm.core;
    requires spring.data.commons;
    requires java.sql;
}

Это приводит к следующему исключению:

java.lang.IllegalArgumentException: Class class hello.Person is not a valid entity class. Please check the entity mapping.

Поскольку карта classInfos в org.neo4j.ogm.metadata.MetaData содержит нулевые значения для объектов ClassInfo.

...