728x90
반응형
Springboot project를 AWS 서버에 Docker + Github Action 조합으로 배포하는 와중에 when using copy with more than one source file the destination must be a directory and end with a / 에러가 발생하며 빌드 실패했다.
처음에는 도커파일이 문제인가? 싶었는데... 아니었다.
스프링부트 2.5 버전 이상부터는 gradle로 빌드하면 jar 파일이 2개가 생성된다고 한다.
- 프로젝트이름-버전.jar
- 프로젝트이름-버전.plain.jar
이 중에 ~plain.jar에는 라이브러리 없이 단순히 코드만 들어있는데 이때문에 오류가 발생한다고 하네. 그래서 build.gradle 파일에 아래와 같이 plan.jar를 만들지 않도록 하는 설정을 추가하면 에러를 해결할 수 있다.
jar {
enabled = false
}
근데 나는 분명히 로컬에서 도커 띄워서 빌드했을 때 잘 됐는데 왜 오류가 났을까??!?!? <- 생각해보면 gradle로 빌드 안하고 그냥 터미널에 명령어 쳐서 뚝딱뚝딱 빌드함... 그래서 파일이 한 개만 생성되었었다. (plain.jar 없었음!)
오류는 항상 얘기치 못한 곳에서 생기는구려 ^.^... 로컬에서 잘 됐어도 문제네. 근데 이런것도 알게되고 좋은 것 같다. XD
728x90
반응형
'Spring' 카테고리의 다른 글
스프링배치 완벽가이드 - 7장 ItemReader (0) | 2023.07.03 |
---|---|
스프링배치 완벽가이드 - 6장 잡 실행하기 (0) | 2023.06.25 |
스프링배치 완벽가이드 - 4장 잡과 스텝 이해하기 (0) | 2023.06.25 |
웹 애플리케이션 서버 구동 시 일어나는 일 (초기화 - 서블릿 컨테이너/애플리케이션 초기화) (0) | 2023.06.04 |
jar xvf (jar 옵션) (0) | 2023.06.03 |