Unable to access jarfile <path>, jar파일에 접근 불가 오류, deploy.sh에서 오류, Dspring

문법식·2022년 1월 27일
0

스프링 부트 프로젝트에 Github ActionAWS CodeDeploy를 사용하여 EC2서버로의 CI/CD를 구현했다. Gihub ActionAWS CodeDelploy에서는 계속 오류없이 성공하나 EC2서버에서 구동 중인 jar를 확인해보면 아무것도 돌아가지가 않았다. nohup.out를 확인해보니 글 아래쪽에 첨부한 오류 메시지가 있었다. 처음에는 오류 메시지에서 알려주는 것 그대로 경로가 잘못된 줄 알고, EC2에서 배포된 jar파일의 경로, 프로젝트의 경로를 deploy.shecho로 출력해봤는데 문제가 전혀 없었다. 경로도 다 맞는데 도대체 왜 오류가 나는지를 알 수가 없었다. 그래서 권한 문제라도 있나하고 권한도 줘보고 별 이상한 방법을 다 해봤는데도 해결되지가 않았다. 그래서 예전에 공부한 이동욱님의 스프링 부트와 AWS로 혼자 구현하는 웹 서비스 프로젝트의 Gihub로 가서 나와 같은 오류를 가진 사람이 남긴 이슈를 확인해봤다. 문제의 원인은 deploy.sh에서 nohup를 아래와 같이 한줄로 구현해서 그런 것이었다,,,

nohup java -jar \ - Dspring.config.location=classpath:/application.properties,/home/ubuntu/app/application-real-db.properties \ $JAR_PATH > $REPOSITORY/nohup.out 2>&1 &

\문자를 사용한 후에는 엔터로 줄을 바꿔서 그 다음 코드를 적어야하는데 한 줄로 다 적어버려서 생긴 문제였다. 엔터로 줄바꿈을 안해서 생긴 문제라고는 전혀 생각도 못해서 허탈했다. 아래와 같이 deploy.sh를 수정하니까 해결됐다. 글 아래에 내가 참고한 Github 이슈의 주소를 남겨놓겠다.

nohup java -jar \
  -Dspring.config.location=classpath:/application.properties,/home/ubuntu/app/application-real-db.properties \
$JAR_PATH > $REPOSITORY/nohup.out 2>&1 &
Error: Unable to access jarfile <path>

https://github.com/jojoldu/freelec-springboot2-webservice/issues/212

profile
백엔드

0개의 댓글