Aws S3를 사용해 이미지를 업로드 하려고 했고, Aws 의존성 설정 후 컴파일 할 때 발생한 에러이다.
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-aws</artifactId>
<version>2.2.6.RELEASE</version>
</dependency>
com.amazonaws.SdkClientException: Failed to connect to service endpoint:
spring-cloud-starter-aws 의존성 주입시 로컬환경은 aws 환경이 아니기 때문.
@SpringBootApplication(exclude = {
org.springframework.cloud.aws.autoconfigure.context.ContextInstanceDataAutoConfiguration.class,
org.springframework.cloud.aws.autoconfigure.context.ContextStackAutoConfiguration.class,
org.springframework.cloud.aws.autoconfigure.context.ContextRegionProviderAutoConfiguration.class
})
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
SpringBootApplication에 exclude를 적용.
ContextInstanceDataAutoConfiguration.class
ContextStackAutoConfiguration.class
ContextRegionProviderAutoConfiguration.class
<dependencyManagement>
<dependencies>
<dependency>
<groupId>io.awspring.cloud</groupId>
<artifactId>spring-cloud-aws-dependencies</artifactId>
<version>2.3.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
의존성을 이걸 사용하면 SpringBootApplication에 exclude를 적용하지 않아도 된다.
하지만 Aws S3 업로드 코드도 달라진다.