Spring cloud项目加入对象存储spring cloud oss遇到的问题

加入spring-cloud-starter-alicloud-oss爆红的解决方法

指定版本即可

  <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alicloud-oss</artifactId>
            <version>2.2.0.RELEASE</version>
        </dependency>
        <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                <version>2021.1</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

我将oss的相关配置配置到nacos注册中心的时候,就会出现以下异常

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'ossClient' defined in class path resource [com/alibaba/alicloud/context/oss/OssContextAutoConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.aliyun.oss.OSS]: Factory method 'ossClient' threw exception; nested exception is java.lang.IllegalArgumentException: Oss endpoint can't be empty.

在网上找了好久,最终是因为bootstrap.yml。升级spring cloud版本之后发现bootstrap.yml 失效了,阅读官方文档得知,需要新增一个引用来开启bootstrap.xml文件的读取,新版spring cloud默认是关闭读取了。
增加以下依赖:

   <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-bootstrap</artifactId>
        </dependency>

官方文档:https://docs.spring.io/spring-cloud-config/docs/current/reference/html/#config-first-bootstrap

  • 加入oss服务的时候,一定要配置oss.endpoint等配置
posted on 2022-09-06 09:01  小熊学Java  阅读(328)  评论(0)    收藏  举报