초기 build.gradle파일에 자바 개발에 가장 기본 설정만 적혀있다. 이제 필요한 설정을 추가할 것인데, 스프링 이니셜라이저를 통한 진행은 안 함. 왜냐,
- R1: 스프링 이니셜라이저 이용시 build.gradle코드 역할 이해 어려움
- R2: 이니셜라이저외의 의존성 추가 방법을 알 수 없다
1. Build.gradle의 기존 코드-추가작성를 통해 설정 이해하기
그런데 이 책의 2019기준와 현재 2021.12에서 작성방법이 달라졌기에 지은이의 최신 버전을 위한 코드 업데이트 작성글을 참고해서 수정한다. 참고블로그 이동
1.1. 플러그인 의존성 관리 설정
buildscript{
ext { // ext = build.gradle에서 사용하는 전역변수를 설정하겠다
springBootVersion = '2.1.7.RELEASE' // spring-boot-gradle-plugin의 2.1.7RELEASE를 의존성으로 받겠다
mavenCentral()
jcenter()
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
}
}
- 이 코드는 최상단에 위치할 예정이었으나, 책이 작성된 시점(2019)과 달리 필요없게되었다. 작성하지 않는다.
1.2. 플러그인 의존성 적용 코드
plugins {
id 'java' // 필수
id 'org.springframework.boot' version '2.4.1' // 필수
id 'io.spring.dependency-management' version '1.0.10.RELEASE' // 필수, 스프링 부트의 의존성 관리 플러그인
2021년 기준으로 플러그인에 대하여 다음과 같은 작성 방식으로 변경되었다
- apply plugin:’’ → plugins{id ‘’}
1.3. 의존성 라이브러리를 받을 원격 저장소 지정
dependencies {
//compile -> implementation, test/compile -> TestImplementation
implementation('org.springframework.boot:spring-boot-starter-web')
implementation('org.springframework.boot:spring-boot-starter-mustache')
// lombok
implementation('org.projectlombok:lombok')
annotationProcessor('org.projectlombok:lombok')
testImplementation('org.projectlombok:lombok')
testAnnotationProcessor('org.projectlombok:lombok')
implementation('org.springframework.boot:spring-boot-starter-data-jpa')
implementation("org.mariadb.jdbc:mariadb-java-client")
implementation('com.h2database:h2')
testImplementation('org.springframework.boot:spring-boot-starter-test')
}
gradle이 업데이트 되면서 다음처럼 코드를 변경하여 적용함
- compile → implementation
- testComile → testImplementataion
1.4. Junit5를 사용하기 위한 필수 선언 test란
test {
useJUnitPlatform()
}
1.5. 작성 이후, 리로드와 테스트 수행
- 리로드: (인텔리제이 창 우측) Gradle탭 > 새로고침 기호 > 의존성 설치 확인
- 테스트: (인텔리제이 창 우측) Gradle탭 > task > verification > test
2. 인텔리제이에서 깃과 깃허브 연동
2.1. 연동
설치할 때 했지롱
2.2. 커밋하기
- (좌측) 커밋 탭 > .idea, .gradle는 제외할 것
- 폴더구조로 보이지 않는다면 상단쪽에 다이렉트 체크하면 됨
- (커밋 탭 아래) 커밋 내용 작성 후, commit and push (즉시 push)
2.3. 깃 플러그인 설치
금방은 수동으로 가릴 컨텐츠를 선택했지만 ignore 파일로 자동 처리를 시키자.
플러그인 중에 ignore 작성 관련 기능을 제공해주는 것이 있어 해당 플러그인 설치(검색 단축키: command +Shit + A)
지원해주는 사항은 다음과 같음
- 파일 위치 자동완성
- ignore처리 여부 확인
- 다양한 ignore파일 지원(docker, npm도 가능)
끗.