Приложение Spring исключает класс из зависимости MavenJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Приложение Spring исключает класс из зависимости Maven

Сообщение Anonymous »

У меня есть проект, в котором используется пользовательская зависимость (

Код: Выделить всё

xl.person.controller.PersonController
), в котором я перезаписываю класс PersonController. Это многомодульный проект.
Класс PersonController находится внутри модуля external (этот модуль также имеет зависимость) – @RestController аннотации
В моем модуле Application я создаю экземпляры bean-компонентов как таковые и ожидаю, что PersonController из пользовательской зависимости не будет включен . Как видите, компонентComponentScan необходим для других классов, которые я использую из пользовательской зависимости

Код: Выделить всё

@Configuration
@ComponentScan(
basePackages = "xl.person",
excludeFilters={
@ComponentScan.Filter(
type = FilterType.ASSIGNABLE_TYPE,
value = { xl.person.controller.PersonController.class }
)
}
)
public class PersonConfiguration {
@Bean
@Primary
PersonController personController(
PersonService service, //from dependency
PersonSecondService serviceTwo //not from dependency
) {
return new PersonController(service, serviceTwo);
}
}
Я также попробовал исключить подход @SpringBootApplication

Код: Выделить всё

@SpringBootApplication(
scanBasePackages = "xl.app"
exclude = { PersonController.class }
)
Имя bean-компонента «personController», указанное в аннотации, для класса bean-компонента [xl.person.controller.PersonController] конфликтует с существующим несовместимым определением bean-компонента с тем же именем и класс [xl.app.external.PersonController]

Обновление
Похоже, триггер @RestController в определении PersonController, которое у меня есть. Таким образом, во внешнем модуле класс уже создан, а затем конфликтует с пользовательской зависимостью. Однако по очевидным причинам я хочу сохранить @RestController в моем классе контроллера.
Кроме того, @ComponentScan в моем классе конфигурации, похоже, игнорируется (следовательно, не работает), потому что @SpringBootApplication(scanBasePackages="xl.app") выполняет первое сканирование, я думаю, и уже выдает ошибку. Однако исключение = { PersonController.class пользовательского класса зависимостей здесь не работает.

Подробнее здесь: https://stackoverflow.com/questions/793 ... dependency
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»