我想使用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;
}