-
EC2에 springboot 배포 할 때 만나는 에러AWS 2024. 8. 13. 17:13
1. 빌드도구를 maven을 쓸 때 (mvn command not found)
springboot 프로젝트의 테스트 코드를 실행해보고 싶을 땐, mvn test 명령어를 쓴다. (gradle은 ./gradlew test)
EC2 Linux에 maven이 설치되지 않았을 경우 mvn이 없다고 나올텐데
(1) EC2 환경이 Ubuntu/Debian 기반 Linux 일 경우
sudo apt-get update sudo apt-get install maven
(2) EC2 환경이 CentOS/Fedora 기반 Linux 일 경우 (요즘 이쪽 계열에 Rocky Linux도 있는 걸로 암)
sudo yum install maven
(3) MacOS 일 경우
brew install maven
설치가 다되면 mvn -v 명령어로 maven 버전 정보가 나오면 된다.
2. maven build를 할 때 pom.xml의 SNAPSHOT 버전 오류
[ERROR] [ERROR] Some problems were encountered while processing the POMs: [FATAL] Non-resolvable parent POM for com.sichan:test-project:0.0.1-SNAPSHOT:Could not find artifact org.springframework. boot:spring-boot-starter-parent:pom:2.7.10-SNAPSHOT and 'parent.relativePath' points at no local POM @ line 3, co lumn 10
대충 이런식으로 springboot dependency에 SNAPSHOT 버전을 Maven Central에서 찾을 수 없다는 내용..
버전명에 SNAPSHOT을 지워준다. 2.7.10-SNAPSHOT을 2.7.10으로 바꿔주면 빌드가 된다.
실제로 메이븐 공홈들가보니 snapshot 버전이 없었다... ㅋㅋ
3. maven과 gradle 빌드 시 jar를 떨구는 default path
참고로, mvn 명령어를 쓸려면 pom.xml이 위치한 경로로 이동해서 해야함. 안그러면 못찾음~
< mvn package 혹은 mvn install >
# 생성되는 jar의 이름은 pom.xml에 작성된 artifactId + version + .jar 형식이다. # 기본적으로 pom.xml에서 <build>에 따로 jar 경로를 설정하지 않는다면 # /target 폴더 아래에 만든다. 예시 -> project이름/target/*.jar
< gradlew build >
예시 -> project이름/build/libs
'AWS' 카테고리의 다른 글
AWS 삽질 기록 (0) 2024.06.21 S3와 CloudFront로 동영상 서비스 제공하기 (0) 2022.01.23 AWS EC2 인스턴스 생성 (Feat. Ubuntu) (0) 2021.02.11 AWS Practitioner 자격증 (0) 2021.02.09