728x90
에러 조건
- ec2 Amazon 2023 linux
- java 11
- spring boot 2.7
- rds mariadb 10.6
에러 메시지, 해석
- "Could not find or load main class {클래스이름} " 이런류
- 검색하다보면 Intellij - Gradle 간 환경에서 자주 발생하는 이슈라고 한다.
- 해결한 사람들을 보면 아래 케이스로 나뉜다.
- Intellij 세팅을 변경하거나 (폴더 이름 한글이라 발생한 케이스)
- gradle 세팅을 바꿔주거나
- gradle 폴더에 있는 'gradle-wrapper.jar'를 직접 밀어주거나
- 뭔가 나랑은 안맞는 케이스인것 같아서 build.gradle에 대해 검색해보았다. 그리고 아래 도움된 링크에서 힌트를 얻어 build.gradle을 수정했다.
plugins {
id 'java'
id 'org.springframework.boot' version '2.7.14'
id 'io.spring.dependency-management' version '1.0.15.RELEASE'
// 자동 생성되지 않는 부분 (배포 환경 트러블 슈팅을 위해 추가)
id 'application'
}
// 자동 생성되지 않는 부분 (배포 환경 트러블 슈팅을 위해 추가)
application {
mainClass = 'chaedie.awsspring.AwsSpringApplication'
}
- 위 코드에서 주석으로 표시된 application plugin 추가 -> application.mainClass 정보 추가를 통해 문제를 해결했다.
- 어찌어찌 해결하긴 했는데 이게 진짜 원인인지 아닌지는 모르겠다.
- 그러나 위 방법대로 application plugin을 추가하고, mainClass를 지정해주니 배포환경에서 deploy 스크립트 실행 시 나오는 로깅 자체가 달라지더라 ㅎㅎㅎㅎㅎㅎㅎㅎ 굳
- 그리고 연이어 발생하는 RDS에서의 Table 문제는 ddl 수정으로 간단히 해결하고 배포에 성공했다. 스프링부트 첫 배포 성공 ㅎㅎㅎ
도움된 링크
'BackEnd > Spring-boot' 카테고리의 다른 글
[CodeDeploy] 에러 로그 경로 (0) | 2023.07.27 |
---|---|
[EC2] gradlew test 실행 시 ec2 hang -> 이후 연결 안됨 (0) | 2023.07.26 |
[SpringBoot-JPA] 게시판 CRUD 이후 파일 첨부 - AWS S3 (1) | 2023.07.14 |
[Redis] Spring-boot-data-redis 캐싱 (0) | 2023.07.09 |
댓글