Я пишу код, который должен быть совместим как с Quarkus, так и с Spring DI. Я использую расширения DI и Spring Boot Properties, Spring Boot Extension. По-видимому, он работает нормально, но внедрение любого другого объекта из внешней зависимости, которая была аннотирована как bean-компонент, никуда не внедряется. Quarkus, кажется, не распознает это.
Это какое-то ограничение Spring DI Extension? Я уже пробовал использовать свойство quarkus.index-dependency
, а также пытался включить зависимость, структурированную как расширение Quarkus, но это не сработало.
РЕДАКТИРОВАТЬ 1: Как указано @Kolossus, добавив beans.xml
решил проблему DI, но у меня есть другая ошибка, связанная с классом свойств:
java .lang.RuntimeException: io.quarkus.builder.BuildException: Ошибка сборки: сбой сборки из-за ошибок
[error]: Build step io.quarkus.arc.deployment.ArcProcessor#validate threw an exception: javax.enterprise.inject.spi.DeploymentException: Found 3 deployment problems:
[1] Ambiguous dependencies for type com.properties.IntegrationProperties and qualifiers [@Default]
- java member: com.authorization.AuthenticationService#<init>()
- declared on CLASS bean [types=[com.authorization.AuthenticationService, java.lang.Object], qualifiers=[@Named(value = "authenticationService"), @Default, @Any], target=com.authorization.AuthenticationService]
- available beans:
- CLASS bean [types=[com.properties.IntegrationProperties, java.lang.Object], qualifiers=[@Default, @Any], target=com.properties.IntegrationProperties]
- PRODUCER METHOD bean [types=[com.properties.IntegrationProperties, java.lang.Object], qualifiers=[@Default, @Any], target=com.properties.IntegrationProperties produceIntegrationProperties(org.eclipse.microprofile.config.Config), declaringBean=io.quarkus.arc.runtime.config.ConfigPropertiesProducer]
Неоднозначные зависимости во всех точках внедрения для класса свойств.