열렬히.뛰기

자바의 친구들

웹 프로그래밍 > Spring > 자바의 친구들

스프링은 항상 어울려 다니는 친구들이 있다. 우선 여기에 익숙해져 보자.

인텔리제이

자바와 자바의 친구들을 위한 IDE. 이것들을 먼저 해보자.

  • 인텔리제이 학생 계정 만들어서 유료버전 무료로 쓰기.
  • 인텔리제이와 github 연동하기. (이미 있는 레포 인텔리제이로 끌어와보기)
  • 인텔리제이로 프로젝트 만들기.
  • 인텔리제이의 UI 색깔 조정하기.

자바 프로젝트의 구조

자바 프로젝트의 표준 디렉토리 구조를 알아보자. 자바로 복잡한 무언가를 만들려면 대부분 이러한 구조를 따르게 되어 있다.

\.
├── build.gradle
├── settings.gradle
├── src
│   ├── main
│   │   ├── java
│   │   │   └── com
│   │   │       └── example
│   │   │           ├── Main.java
│   │   │           └── Utils.java
│   │   └── resources
│   └── test
│       ├── java
│       │   └── com
│       │       └── example
│       │           └── MainTest.java
│       └── resources
└── startGradle.iml

이외에도 파일이 있긴 하지만 여기서는 생략.
  • /src : 자바 코드가 들어가는 디렉토리. 크게 main과 test로 나뉜다.
  • /src/main : java 디렉토리와 resources 디렉토리가 있다.
    • /java : 실제 자바 코드를 묶은 패키지들이 존재한다. 패키지 = 클래스의 모음
    • /resources : 자바 코드가 참조하는 리소스 파일이 들어있음
  • /src/test : java 디렉토리와 resources 디렉토리가 있다.
    • /java
    • /resources

패키지 이름 짓기

  • 모든 자바 파일은 하나의 클래스 (xxx.java = xxx라는 이름의 클래스)
  • 패키지는 무조건 com.xxx 라고 이름 짓는다. 보통 도메인(naver.com 같은거)을 뒤집어서 이름을 만드는 것이며, 이를 통해 고유함을 지킬 수 있음.

다른 이름을 가진 디렉토리를 /src/main 안에 넣고 싶은 경우, Gradle 빌드 스크립트에서 sourceSets를 사용하여 추가한 디렉토리를 소스 디렉토리로 등록해야 할 수 있다.

프로젝트 시작하기

  • 그냥 디렉토리를 만드는 건 의미가 없고,

그레이들 (Gradle)

자바를 위한 고으급 makefile. 이것들을 먼저 알아보자.

  • 그레이들 프로젝트 시작해보기
  • 그레이들 + 자바의 구조 알아보기
  • 그레이들로 jar 파일 만들어보기
  • 그레이들 작성 방법 알아보기

그레이들 작성해보기

그레이들에는 크게 Groovy용과 Kotlin용이 있으며, 보통 자바를 쓸 때는 Groovy용을 사용한다.

plugins {
    id 'java'  // 사용하려는 플러그인
}

group = 'com.example'  // 프로젝트 그룹
version = '1.0-SNAPSHOT'  // 프로젝트 버전

repositories {
    mavenCentral()  // 의존성을 다운로드할 저장소
}

dependencies {
    implementation 'org.springframework:spring-core:5.3.10'  // 프로젝트에 필요한 의존성
    testImplementation 'junit:junit:4.13.2'  // 테스트에 필요한 의존성
}

tasks.named('test') {
    useJUnitPlatform()  // JUnit 플랫폼 사용
}

그레이들로 빌드하기

인텔리제이에서 GUI로 빌드하기

  1. Gradle 탭 열기:
  • 인텔리제이에서 우측에 위치한 Gradle 탭을 찾기.
  • 이 탭이 보이지 않는 경우, View > Tool Windows > Gradle을 선택하여 활성화.
  1. 빌드 작업 실행:
  • Gradle 탭에서 Tasks > build를 확장.
  • 여기서 build를 더블 클릭하면 프로젝트가 빌드됨.
  1. 빌드 결과 확인:
  • 빌드가 완료되면, 인텔리제이의 하단에 있는 Run 탭이나 Build 탭에서 빌드 결과를 확인한다.
  • 빌드가 성공하면, BUILD SUCCESSFUL 메시지가 출력된다.

터미널에서 CLI로 빌드하기

  1. 터미널로 가기
  2. ./gradlew build를 친다. (윈도우의 경우 ./gradlew.bat build )
  3. 빌드가 성공하면, BUILD SUCCESSFUL 메시지가 출력된다.

만들어진 결과물은 어디서, 어떻게 확인?

  • 새롭게 빌드를 하고 싶다면, ./gradlew clean build 를 치기.
  • 빌드 산출물은 jar 파일로, build/libs 디렉토리에 생성.
  • java -jar (파일경로) 로 실행하면 됨.

그레이들로 테스트하기

인텔리제이에서 테스트 실행 (JUnit 테스트)

  1. Gradle 탭에서 테스트 작업 실행:
  • Gradle 탭을 열고 Tasks > verification > test를 더블 클릭하여 테스트를 실행할 수 있습니다.
  1. 테스트 결과 확인:
  • 테스트가 실행되면 결과는 인텔리제이 하단의 Run 창에서 확인할 수 있습니다.
  • 모든 테스트가 성공하면, Tests passed: X와 같은 메시지가 출력됩니다.

터미널에서 테스트 실행

  1. 터미널로 가기
  2. ./gradlew test를 친다. (윈도우의 경우 ./gradlew.bat test)

테스트의 결과는 어디로 가야하죠?

build/reports/tests/test/index.html 에 있음.