본문 바로가기
[inflearn] 스프링 입문

스프링 입문) 4. 빌드 및 실행

by 슬픈 야옹이 2023. 3. 23.

작성한 애플리케이션을 IDE 환경이 아닌 실제로 환경에서 실행하려면 프로그램을 빌드하고 실행시켜야 한다.

 

다행히도 Gradle과 같은 빌드 도구는 이 같은 빌드를 매우 쉽게 하도록 만들어준다.

 

 

Windows에서의 빌드 및 실행

1. 콘솔 창에서 프로젝트 경로로 이동한다.

2. gradlew를 실행한다.

3. build/libs/ 경로로 이동한다.

4. 빌드된 프로그램을 실행한다.

 

1. 콘솔 창에서 프로젝트 경로로 이동한다.

cd <프로젝트 경로>

 

 

2. gradlew를 실행한다.

./gradlew build

혹은 빌드가 잘 안된다면 clena build 옵션을 이용한다.

clean build 옵션을 사용하면 기존 빌드 내용을 모두 지우고 프로그램을 새로 빌드한다.

./gradlew clean build

 

 

3. build/libs/ 경로로 이동한다.

cd build/libs

 

 

4. 빌드된 프로그램을 실행한다.

java -jar .....0.0.1-SNAPSHOT.jar

 

 

빌드한 프로그램을 실행한 뒤 접속해보면 정상적으로 접속이 되는것을 확인할 수 있다.

 

 

프로그램을 종료하려면 콘솔 창에서 Ctrl^C 하면 된다.

 

 

 

 

 

Linux에서의 빌드 및 실행

만약에 빌드된 ...SNAPSHOT.jar 파일이 있다면 윈도우든 리눅스든 해당 파일만 배포할 시스템에 옮겨서 실행하면 된다.

물론 Java가 깔려있어야 한다.

 

일단 여기서는 프로젝트 전체를 가지고 와서 리눅스에서 직접 빌드해 실행해 보도록 하겠다.

프로젝트 폴더를 다운받는 방법은 다양하나, 나는 프로젝트와 연결해놓은 git repository가 있으므로
git을 이용해 다운로드하도록 하겠다.

 

모든 작업은 root로 진행한다.

사실 이런 작업을 진행하는 별도의 계정을 생성하면 보안상 더 안전하다.

 

1. 빌드 및 실행에 필요한 패키지들을 다운받는다.

2. 자바 설치 경로를 확인하고 자바 환경 변수를 설정한다.

3. 프로젝트를 다운받는다.

4. 프로그램을 빌드하고 실행한다.

 

 

1. 빌드 및 실행에 필요한 패키지들을 다운받는다.

yum install -y git java-11-openjdk.x86_64

 

 

2. 자바 설치 경로를 확인하고 자바 환경 변수를 설정한다.

cd /usr/lib/jvm
ls

자바 설치 경로 확인

 

vi /etc/profile

아래 내용을 파일에 추가
=============================================================================
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.14.1.1-1.el7_9.x86_64
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH="."
===============================================================================

자바 환경변수 설정

 

 

 

3. 프로젝트를 다운받는다.

 

프로젝트를 다운받을 디렉터리를 생성하고 이동한다.

사실 어느 경로에 다운받아도 실행에는 문제 없는데, 현업에서 어떻게 디렉터리를 관리하는지는 잘 모르겠다.

mkdir <프로젝트를 저장할 경로>
cd <디렉터리 경로>

 

github repository와 연결해 프로젝트를 다운받는다.

git init
git remote add origin <git repository 주소>
git pull origin master

 

한번만 설치해서 실행하고 말 꺼면 굳이 git까지는 쓰지 않아도 되지만, git을 쓰면 프로그램을 업데이트할 때 편리하기 때문에 사용해보았다.

 

과거에 진행한 소규모 프로젝트의 개발 과정에서, 디버깅 등 여러 이유로 프로그램을 업데이트 해야할 일이 많았다.

 

그럴 때마다 프로그램 파일을 다시 만들어서 다른 시스템에 옮기는 것은 꽤나 번거로운 작업이다.

 

하지만 git을 사용하면 push, pull만 하면 되므로 업데이트 작업이 훨씬 간편해진다는 것을 알 수 있었다.

 

사람들이 git을 이용하는 큰 이유중 하나이므로 웬만하면 해 볼 것을 권장한다.

 

 

4. 프로그램을 빌드하고 실행한다.

 

cd <프로젝트 경로>
chmod 744 gradlew
./gradlew build (혹은 clean build)

첨부한 화면은 화면을 깔끔하게 찍기 위해 다시 빌드한 화면이다.

실제로 처음 빌드할 땐 Gradle도 다운받고 빌드 시간도 좀 더 걸린다.

 

 

build/libs 경로로 이동하여 빌드한 프로그램을 실행한다.

cd /build/libs
java -jar .....0.0.1-SNAPSHOT.jar

 

 

실행 후 접속해보면 정상적으로 접속되는 것을 확인할 수 있다.

 

 

 

+) windows에서 접속할 때는 localhost고, Linux에서 접속할때는 192.168.10.173인 이유는 간단하다.

 

OS 차이가 아니라, windows에서는 같은 PC에서 프로그램을 실행하고 접속했기 때문이다.

그래서 자신(localhost)의 8080번 포트로 접속해야 작동을 확인할 수 있다.

 

반면 이 실습환경에서의 Linux는 CLI 환경이라 같은 PC에서 접속을 확인하기 번거롭다.

따라서 Linux에서 프로그램을 실행한 뒤, 다른 PC에서 접속하였다.

다른 PC에서 접속하려면 Linux의 주소를 알아야 하므로 Linux 주소(192.168.10.173)의 8080번 포트로 접속했다는 점에서 차이가 있다.