Я не могу понять, почему бобы не найден.***************************
APPLICATION FAILED TO START
***************************
\00\00\00\00\00\00
Description:
Parameter 1 of constructor in my.package.service.AuthorizationService required a bean of type 'my.package.repository.I2b2QueryRepository' that could not be found.
Action:
Consider defining a bean of type 'my.package.repository.I2b2QueryRepository' in your configuration.
Repository
public interface I2b2QueryRepository extends MongoRepository {
I2b2Query findOneById(String queryId);
}
service
private final ProjectMicroserviceFeignClient projectMicroserviceFeignClient;
private final I2b2QueryRepository i2b2QueryRepository;
public AuthorizationService(ProjectMicroserviceFeignClient projectMicroserviceFeignClient, I2b2QueryRepository i2b2QueryRepository) {
this.projectMicroserviceFeignClient = projectMicroserviceFeignClient;
this.i2b2QueryRepository = i2b2QueryRepository;
}
мой пакет
@SpringBootApplication
@EnableMongoRepositories(basePackageClasses = I2b2QueryRepository.class)
public class MyPackage {
public static void main(String[] args) {
}
}
я попробовал:
- с и без @springbootapplication и @enablemongorepositories
- Добавление @componentscan ("my.package")
- @componentscan ("my.package") @componentscan ("my.package") . @componentscan (scanbasepackages = ...) к основному классу родительского проекта
- с или без @repository аннотации в репозитории
- @autowired и инъекция конструктора в Authorizationservice
- Добавление @enablemongorepositories к основному классу родительского проекта, но это приводит к другим ошибкам, и я не уверен, что это правильное решение
.src/
├── main/
│ └── java/
│ └── com/
│ └── example/
│ ├── MyPackage.java
│ └── authorization/
│ ├── service/
│ │ └── AuthorizationService.java
│ └── repository/
│ ├── ProjectMicroserviceFeign.java
│ └── I2b2QueryRepository.java
│ ├── META-INF/
│ ├── application.properties
глобально я пробовал решения из этого вопроса, без успеха.@SpringBootApplication(scanBasePackages = { "main.project.path", "my.package.path"}
@EnableMangoRepositories(basePackageClasses = {I2b2QueryRepository.class}
@EnableElasticSearchRepositories(basePackageClasses = {MyESRepo.class}
@EnableJpaRepositories(basePackageClasses = {MyJpaRepo.class},
public class MainProjectApp {
}
Обновление 2
структура пакета основного проекта
src/
└── main/
└── java/
└── com/
└── example/
├── MainProject.java
└── repository/
├── I2b2QueryRepository.java (Mango)
├── UserRepository.java (JPA)
├── UserSearchRepository.java (Elasticsearch)
Подробнее здесь: https://stackoverflow.com/questions/797 ... dependency