我创建的项目引入Springboot版本:2.6.13,Springcloud版本:2021.0.5,Spring-cloud-aplibaba版本:2021.0.5.0,nacos版本:2.2.1.RELEASE。项目在父pom.xml中使用dependencyManagement减少子项目重复引入jar,统一版本的管理。
最近学习谷粒商城P63 OSS云存储练手时,运行创建第三方服务GulimallThirdPartyApplication.java
报错:Oss endpoint can't be empty
。
Caused by: 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.
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185) ~[spring-beans-5.3.23.jar:5.3.23]
at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:653) ~[spring-beans-5.3.23.jar:5.3.23]
... 19 common frames omitted
Caused by: java.lang.IllegalArgumentException: Oss endpoint can't be empty.
at org.springframework.util.Assert.isTrue(Assert.java:121) ~[spring-core-5.3.23.jar:5.3.23]
at com.alibaba.alicloud.context.oss.OssContextAutoConfiguration.ossClient(OssContextAutoConfiguration.java:53) ~[spring-cloud-alicloud-context-2.2.0.RELEASE.jar:2.2.0.RELEASE]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_221]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_221]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_221]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_221]
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[spring-beans-5.3.23.jar:5.3.23]
... 20 common frames omitted
单独把oss.yml的配置放到application.yml中运行正常,但把oss.yml的提取出来配置到Nacos的配置中心运行就报这个错,搞得郁闷得很,一阵网上搜索解决了。
在网上搜索这种报错总结大概分为3种情况:
第一种