Spring cloud aws对属性注入的依赖性影响



我想使用spring cloud连接AWS。

这是myconfig类的一部分:

@EnableSqs
public class AwsCloudConfig {
@Value("${cloud.aws.region}")
private String region;
@Value("${cloud.aws.profile}")
private String profile;
@Value("${cloud.aws.roleArn}")
private String role;
@Value("${cloud.aws.user}")
private String userKey;
@Value("${cloud.aws.credentials.accessKey}")
private String accessKey;
@Value("${cloud.aws.credentials.secretKey}")
private String secretKey;
//... 
}

通常,Spring从我的属性文件中注入这些属性不会有任何问题。

但当我添加这个依赖项时,它不会注入它们:

org.springframework.cloud:spring-cloud-starter-aws-messaging

为什么这种依赖关系会影响springs属性注入功能?有什么想法吗?

你能这样试试吗?

@Bean
public AmazonS3 amazonS3(@Value("${cloud.aws.credentials.accessKey}") String accessKey,
@Value("${cloud.aws.credentials.secretKey}") String secretKey,
@Value("${cloud.aws.region}") String region) {
AWSCredentials credentials = new BasicAWSCredentials(accessKey, secretKey);
AmazonS3 amazonS3ClientBuilder= AmazonS3ClientBuilder.standard()
.withRegion(region)
.withCredentials(new AWSStaticCredentialsProvider(credentials))
.build();
return amazonS3ClientBuilder;
}

最新更新