Я могу относиться к вам. Я потратил бесчисленные часы на это.
Я разделю ваш вопрос на 3 части (я буду использовать «entity-project» и «spring-project» для ссылки на проект, содержащий классы сущностей и основной проект, пытающийся включить классы сущностей):
Часть 1 из 3: Убедитесь, что ваши классы сущностей представлены в entity-проекте.
Создание конфигурации в корне объекта-проекта
package com.a.b
@Configuration
@Import ({Entity1.class, Entity1Repo.class, Entity1Key.class,
Entity2.class, ... })
class EntityConfig {}
Часть 2 из 3: Убедитесь, что ваши классы сущностей находятся в пути к классам Spring-Project.
Поскольку вы используете SpringBoot, я уверен, что вы используете maven (или Gradle).
В любом случае, убедитесь, что вы установили сущность-проект с классами сущностей:
cd /path/to/entity-project/
mvn install -DskipTests
В файле maven проекта Spring включите объект-проект.
Часть 3 из 3: Используйте аннотацию EntityScan.
Это только мой вкус, но я предпочитаю использовать basePackageClasses вместо basePackage.
@SpringBootApplication
@EntityScan(basePackageClasses = {Entity1.class})
// use basePackageClasses to avoid type errors
@Import({com.a.b.EntityConfig.class}) // this is what you are missing
public class Applciation
{
public static void main(String args[])
{
SpringApplication.run(Applciation.class, args);
}
}
Viola!