728x90
목차
1. 오류 원인
2. 해결 방법
1. 오류 내용
- 젠킨스를 사용하여 spring boot를 docker로 빌드하고 배포하는 중, 다음과 같은 오류 발생하였습니다.
0.377 /bin/sh: ./gradlew: not found
ERROR: process "/bin/sh -c ./gradlew build" did not complete successfully: exit code: 127
2. 해결 방법
- 이 오류는 gradlew 파일 오류 였습니다.
- 젠킨스에 프로젝트 저장소에 가서 gradlew 파일이 crlf 방식인지 lf 방식인지 확인을 해야 합니다.
- docker 빌드시 리눅스 기반이기 때문에 lf 방식으로 저장이 되어있어야 합니다. 하지만 gradlew 파일이 crlf 방식으로 저장이 되어있었기 때문에 위와 같은 오류가 발생하였습니다.
- 따라서 dockerfile 중간에 아래와 같은 문구를 삽입하였습니다.
# file 패키지 설치
RUN apk add --no-cache file
# gradlew 파일이 CRLF인지 확인하고, CRLF이면 LF로 변환
RUN if file gradlew | grep -q CRLF; then \
echo "Converting CRLF to LF in gradlew"; \
sed -i 's/\r$//' gradlew; \
else \
echo "gradlew already uses LF"; \
fi
RUN ./gradlew build
- 위의 내용은 gradlew 파일을 확인해서 crlf이면 lf 형식으로 바꾸는 명령어 입니다.
- 위와 같은 방법으로 빌드하였고, 성공하였습니다.
* 이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.
728x90
'dev > 기타' 카테고리의 다른 글
젠킨스 ERROR: Error fetching remote repo 'origin' 이슈 (2) | 2024.11.15 |
---|---|
젠킨스 저장소 위치 변경하는 법 (windows) (5) | 2024.11.14 |
젠킨스 Couldn't find any revision to build (2) | 2024.11.12 |
MariaDB "ERROR at line 1: Unknown command '-'" 오류 해결하기 (3) | 2024.11.02 |
Nginx 윈도우에서 무료 SSL 발급받기 (win-acme 활용) (1) | 2024.10.12 |