Я пытаюсь обновиться с Spring Cloud Edgware.SR2 до Edgware.SR3. Когда я собираю Spring Cloud Config Server, тест contextLoads по умолчанию в ApplicationTests завершается с ошибкой:
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'encryptionBootstrapConfiguration': Unsatisfied dependency expressed through field 'encryptor'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'org.springframework.cloud.config.server.config.DefaultTextEncryptorConfiguration': Unsatisfied dependency expressed through field 'locator'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'org.springframework.cloud.config.server.config.EncryptionAutoConfiguration$KeyStoreConfiguration': Unsatisfied dependency expressed through field 'rsaProperties'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'org.springframework.cloud.bootstrap.encrypt.RsaProperties' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
Я подозреваю, что это результат этого изменения в Spring Cloud Commons . У меня есть encrypt.rsa
конфигурация в моем bootstrap.yml
файле, который работает в Edgware.SR2, и я попытался добавить compile( "org.springframework.security:spring-security-rsa" )
к build.gradle
.
В Spring Boot 1.5.14 и Spring Cloud Edgware.SR3 ( Spring Cloud Config 1.4.3 и Spring Cloud Commons 1.3.3 ) только тест не пройден. Если я закомментирую тест, соберусь, а затем запустюсь, он запустится успешно и расшифрует мою конфигурацию. Если я захожу в start.spring.io для создания нового проекта Spring Cloud Config, добавляю мой application.yml
, мой bootstrap.yml
и включаю spring-security-rsa
, тест не пройден, а служба не запускается из-за вышеуказанной ошибки.
- Какие изменения мне нужно сделать, чтобы тест по умолчанию проходил на Spring Boot 1.5.14 и Spring Cloud Edgware.SR3 с Spring Cloud Config, в котором используются зашифрованные данные RSA?
- Что мне нужно сделать, чтобы пройти и тест, и сервис для запуска с Spring Boot 2.0.3 и Spring Cloud Finchley?