spring-boot - Spring boot 2.4 - 必须在构建器或设置环境中提供显式区域以提供区域
问题描述
我正在使用 Spring Boot 2.4.5 和 Spring Cloud 2.3.1 并参考这些文档在我的 Spring boot 项目中实现 S3 服务 - spring blog和spring cloud 文档。
我的配置如下图所示。
pom.xml
----------------------------------
<dependency>
<groupId>io.awspring.cloud</groupId>
<artifactId>spring-cloud-aws-autoconfigure</artifactId>
<version>2.3.1</version>
</dependency>
<dependency>
<groupId>io.awspring.cloud</groupId>
<artifactId>spring-cloud-aws-context</artifactId>
<version>2.3.1</version>
</dependency>
----------------------------------
<dependencyManagement>
<dependencies>
<dependency>
<groupId>io.awspring.cloud</groupId>
<artifactId>spring-cloud-aws-dependencies</artifactId>
<version>2.3.1</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
应用程序.yml
cloud:
aws:
credentials:
access-key: <access-key>
secret-key: <secret-key>
region:
static: us-east-2
s3:
region: us-east-2
Bean config - 想知道为什么我必须创建这个 bean,因为 Spring boot 应该这样做。但没有这个,它说“没有这样的豆子”。
@Bean
public AmazonS3 amazonS3() {
return AmazonS3ClientBuilder.defaultClient();
}
在运行应用程序时,出现此错误。可能是什么问题?请注意,我的系统中可能有一些 aws 配置,但我相信它会被application.yml
值覆盖。我什至删除~/.aws
了文件夹并再次尝试,但没有工作。
创建名为“amazonS3”的 bean 时出错。必须在构建器或设置环境中提供显式区域以提供区域
在许多博客中发现了这个问题,但一切都指向 Java AWS SDK,他们都说要配置~/.aws
值,我不想这样做。
解决方案
推荐阅读
- sql - 在 SQL 插入时推迟或重新组合触发器
- sql - 使用 ROW_NUMBER 函数选择最后一行
- python - 如何有效地连接两个嵌套的 ForiegnKey 关系?
- vba - Access VBA 使用什么代码来允许表单计算文本响应?
- c - BIO_do_connect 导致段错误
- docker - Docker 端口未映射
- javascript - 如何在javascript中使用require
- javascript - 在 Asp.net Web 表单中向 ajax 自动完成功能添加两个值
- xml - XML 模式验证失败 - 找到无效内容的起始元素
- android - Android 8.0 及更高版本:在应用未运行时监控电池电量变化