- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我最近将我的 SpringCloud 项目从 Brixton 升级到 Finchley,一切工作正常。我正在开发 Finchley.SR2,没有遇到任何问题,但每当我将项目升级到 Finchley.RELEASE(这是我所做的唯一更改)时,项目就无法启动。
原因是项目找不到AmazonS3Client
Bean:
...Unsatisfied dependency expressed through constructor parameter 0;
nested exception is
org.springframework.beans.factory.NoSuchBeanDefinitionException:
No qualifying bean of type 'com.amazonaws.services.s3.AmazonS3Client' available:
expected at least 1 bean which qualifies as autowire candidate.
Dependency annotations: {}
这些是我之前的相关配置和类:
build.gradle
buildscript {
ext {
springBootVersion = '2.0.2.RELEASE'
}
...
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
classpath('io.spring.gradle:dependency-management-plugin:1.0.5.RELEASE')
}
}
apply plugin: 'java'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
dependencyManagement {
imports {
mavenBom "org.springframework.cloud:spring-cloud-dependencies:Finchley.SR2"
}
}
dependencies {
...
compile('org.springframework.boot:spring-boot-starter-web')
compile('org.springframework.cloud:spring-cloud-starter-aws')
compile('org.springframework.cloud:spring-cloud-starter-config'
...
}
...
S3Config.java(创建 AmazonS3/AmazonS3Client Bean 的类)
...
@Configuration
public class S3Config {
@Bean
public AmazonS3 amazonS3() {
return AmazonS3ClientBuilder.standard()
.withCredentials(new DefaultAWSCredentialsProviderChain())
.build();
}
}
StorageService(找不到Bean的类)
...
@Service
public class StorageService {
private final AmazonS3Client amazonS3Client;
@Autowired
public StorageService(AmazonS3Client amazonS3Client) {
this.amazonS3Client = amazonS3Client;
}
...
}
这是我升级到 Finchley.Release 时对 build.gradle 文件所做的唯一更改:
dependencyManagement {
imports {
mavenBom "org.springframework.cloud:spring-cloud-dependencies:Finchley.RELEASE"
}
}
我尝试寻找任何丢失的库并调整我能找到的所有配置,但似乎没有任何效果。
最佳答案
与 Spring 维护者进行简短交谈后,a solution was found .
看来我的错误是假设 AmazonS3
的 Bean 应该始终作为 AmazonS3Client
Bean 找到,只是因为其中一个实现了另一个。它能在以前的 Spring 版本上运行纯属运气。
创建 AmazonS3Client
的正确方法如下:
@Configuration
public class S3Config {
@Bean
public static AmazonS3Client amazonS3Client() {
return (AmazonS3Client) AmazonS3ClientBuilder.standard()
.withCredentials(new DefaultAWSCredentialsProviderChain())
.build();
}
}
关于java - 将 SpringCloud Finchley 升级到 RELEASE 时缺少 AmazonS3Client Bean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51034175/
在接入spring-cloud-gateway时,可能有需求进行缓存json-body数据或者form-urlencoded数据的情况。 由于spring-cloud-gateway是以webfl
springcloud finchley gateway 统一异常处理 全文搜索[@@]搜索重点内容标记 1 . 问题:使用springcloud gateway时,会出现各种系统级异常,
hystrix参数使用方法 通过注解@hystrixcommand的commandproperties去配置, 如下就是hystrix命令超时时间命令执行超时时间,为1000ms和执行是不启用超
spring boot2.x已经出来好一阵了,而且spring cloud 的最新release版本finchley.release,默认集成的就是spring boot 2.x,这几天将一个旧项目
我正在使用 Spring Boot 2.0.1 版本试用新的 Spring Cloud 项目 Finchley。我已经使用 Spring Initilizr 创建了 maven 项目,并在 Eclip
我最近将我的 SpringCloud 项目从 Brixton 升级到 Finchley,一切工作正常。我正在开发 Finchley.SR2,没有遇到任何问题,但每当我将项目升级到 Finchley.R
概述: spring boot 2.0相对于之前的版本,变化还是很大的。首先对jdk的版本要求已经不能低于1.8,其次依赖的spring的版本也是最新版本5.0,并集成了功能强大的webflux等
我用 Spring boot 2 和最新版本的 Spring Cloud 尝试了 turbine + hystrix 仪表板,似乎存在一些问题并且 turbine 无法从响应式(Reactive)服务
我对微服务比较陌生,我一直在尝试使用这个 proof-of-concept application使用 Spring Boot 和 Spring Cloud。 问题是,虽然该应用程序在 Spring
我是一名优秀的程序员,十分优秀!