프로젝트 Ninda 배포 시 실패 문제 해결

Updated:

01

Travis 및 CodeDeploy를 통해 배포 자동화한 뒤부터 지금까지 거진 3개월간 같은 문제가 나를 괴롭혔다.
매번 커밋해서 새로 서버파일이 배포될 때 마다 Travis에서 빌드가 한번에 이루어지지 않아 몇번이고 재빌드하며 되라고 기도나 하곤 했다. CodeDeploy의 로그를 봐도 그냥 내가 실패했을 때 출력되도록 한 메시지들만 있을 뿐 도저히 어느부분에서 문제가 있는건지 알 수 없었다.

오늘도 똑같은 문제로 고통받다가, 우연찮게 ec2계정에서 nohup.out을 열어보게 됐다. 평소에는 로그를 확인하기 위해 굉장히 여러번 열어서 확인하지만, 배포오류를 겪었을 땐 당연히 배포상의 문제일거라고 생각해서 단 한번도 열어본 적이 없었다.

no main manifest attribute in ~~-plane.jar

딱 한줄의 에러메시지가 나를 반겼다.

바로 허겁지겁 검색해보니, jar파일이 처음 호출해야 하는 Main메소드를 찾지 못해서 생기는 문제란다.

다른 이유도 있겠지만, 나같은 경우는 2.5.0버전 이상의 Spring Boot를 gradle로 사용했을 때 생기는 *-plane.jar파일로 빌드가 진행돼서 생긴 문제였던걸 알 수 있었다.

바로 배포스크립트를 변경해줘서 *-plane.jar파일이 아닌 최신 *.jar파일이 정상적으로 실행될 수 있도록 변경해줬다.

뒤로는 서너번 깃허브에 커밋해보니, 한번도 빠짐없이 모두 성공하고 있다!

참고 자료

Leave a comment