쌓고 쌓다

[SpringBoot] 프로젝트 빌드하고 실행 with 빌드 에러 본문

프로그래밍/spring

[SpringBoot] 프로젝트 빌드하고 실행 with 빌드 에러

승민아 2023. 3. 11. 00:12

프로젝트를 빌드하고 실행 파일을 만들어보자.

 

터미널로 프로젝트 파일로 이동한다.

처음 알았는데 디렉토리에 들어가서 위의 주소에 cmd를 치고 엔터를 누르면

명령 프롬프트의 현재 디렉토리 위치가 이 디렉토리의 위치로 설정되어 콘솔이 열린다.

프로젝트 디렉토리

 

명령 프롬프트

 

이 콘솔창에 gradlew build를 입력한다.

gradlew build 입력

 

 

프로젝트 폴더 내 build 폴더 생성

그러면 프로젝트 폴더 안에 build 폴더가 생기는데 이 폴더 안에 또 libs 폴더로 이동한다.

 

이 libs 폴더 안에 .jar이 존재하는데 이것을 아래의 방법으로 실행한다.

java -jar  hello-spring-0.0.1-SNAPSHOT.jar

 

접속

실행 결과로 스프링이 뜬다. 이렇게 실행파일을 만들어 서버를 열 수 있다.

서버 배포할때도 이 파일을 복사하여 서버에 넣고 실행시키면 서버에서도 Spring이 동작이 된다.

 

잘 안된다면 gradlew clean로 build 폴더를 지우고 해 보자.

gradlew clean build로 build 폴더를 지우고 빌드 또한 가능하다.

 

 

+ 터미널에서 빌드시 에러 발생

먼저 스프링부드 3.0부터 자바17을 사용해야한다는걸 인지하고 그에 맞게 설정해야한다.

 

intellij에서 빌드하면 잘 돌아가는데 터미널에서 빌드할 시 아래와 같은 에러가 발생했다.

에러 발생

 

Java17로 실행하면 해결될 문제이지만 

난 분명 Grandle을 17버전으로도 맞췄고 다른 intelli에서 build 설정을 17로도 맞췄다.

JVA 17이란 말이다...ㅜㅠㅠ

 

build.grandle에 sourceCompatibility 또한 17이다.

build.grandle

 

이상하게 터미널에서만 돌리면 Java17이 아니라고 에러가 발생했다.

 

알고 보니 java17로 업데이트를 했지만

window에서 환경 변수를 수정하지 않아 여전히 11버전으로 실행되고 있었던 것이다.  

환경 변수 설정

 

이미지는 17버전으로 맞춰놨지만 11버전으로 되어있었다.

 

나와 같은 에러 발생 문제가 있다면

window에 고급 시스템 설정 탭에 들어가 환경 변수를 수정해 주자...

고급 시스템 설정
환경 변수

쉽게 말해 window에서 자바 환경변수를 잘 설정해주어야 한다

Comments