Page 415 - 완) I MDP 프로젝트 작품 보고서(전체과 1학년)1.6
P. 415
Maven 의 convention 들을 깨기 위해서는 Mojo 라는 plugin 을 만들어야 했다.
mojo 는 만들기 어렵고 너무 복잡하다.
2005년 Maven 2 에서 여러 module 로 이뤄진 proejct 들은 각 module의 dependency 를 정의할
수 있었다.
Apache library Ivy
Ant 가 Ivy 를 integrated 했다.
project 의 compile 과 packaging process 에서 필요한 dependency 를 명확하게 언급하기 위해
Ant 에 integrated 됐다.
dependency 에 걸려있는 library 에서 필요로 하는 library 가 있다면 그 library 를 알아서 처리해 줬
다.
gradle 이 각 build tool 에서 가져온 장점들
ant : flexibility / full control / chaining of targets
ivy : dependency management
maven : convention over configuration / multimodule projects / extensibility via plugins
gant : Groovy DSL(Domain specific language) on top of Ant
설치
설치 파일 압축을 풀고 설치 경로를 GRADLE_HOME 환경변수로 설정
GRADLE_OPTS에 Gradle 전용 JVM 옵션 설정
GRADLE_USER_HOME : 없으면 $HOME/.gradle. 여기에 의존 *.jar 파일등이 저장된다.
JAVA_OPTS에 자바 애플리케이션 공용 JVM 옵션 설정
*.build 파일의 인코딩
기본적으로 Java의 file.encoding 시스템 프라퍼티를 따른다.
윈도우 환경에서 UTF-8로 빌드 파일을 만들려면 GRADLE_OPTS=-Dfile.encoding=UTF-8 형태로 강
제 지정
Gradle 설정 파일
Gradle 기본 설정 파일은 build.gradle이다. settings.gradle 파일이 존재할 경우 settings.gradle 파일
까지 빌드에 포함해 실행한다. settings.gradle 파일은 여러 개의 모듈로 분리해 개발하는 경우 유용하
게 사용할 수 있다.
Gradle에서 속성은 1. Gradle 설치 및 프로젝트 생성에서 확인할 수 있었듯이 gradle.properties 파일
에서 관리할 수 있다.
build.gradle 이 아닌 다른 빌드 파일을 선택해 실행하는 경우 "gradle -b 설정파일"과 같이 실행한
다. 이와 같이 실행할 경우 settings.gradle 은 무시된다.
인천전자마이스터고등학교
- 408 -