Gradle 2

[gradle] dependency 추가할 때 compile 과 implementation의 차이

Compile vs Implementation gradle springboot demo 프로젝트를 진행하면서 gradle dependency 관련해서 검색을 하다 보면 어떤 글에서는 implementation 을 사용하고 어떤 글에서는 compile 을 사용하는 경우가 있다. 하지만 gradle 7.3.2 버전으로 demo 프로젝트를 진행하면서 compile 로는 실행되지 않아서 무슨 차이가 있는지 알아보기로 했다. 공식 문서에는 꽤 간단하게 설명되어있지만, 정말 바로 알아들을 수 없었기에.... 검색을 통해서 해당 내용에 대해 정리하고자 한다. A를 의존하고 있는 모듈이 B, B를 의존하고 있는 모듈이 C 라고 가정하자. Compile or api 사용할 경우 A라는 모듈을 수정하게 되면, 이 모듈을 ..

[gradle] 기본개념, 특징, 패키지 구조, 간단한 사용법

Gradle Gradle은 Groovy를 기반으로 한 빌드 도구이다. Ant 와 Maven 과 같은 이전 세대 빌드 도구의 단점을 보완하고 장점을 취합하여 만든 오픈소스로 공개된 빌드 도구이다. 참고링크 : Gradle (github) Ant XML 기반으로 빌드 스크립트를 작성한다. 자유롭게 빌드 단위를 지정할 수 있다. 간단하고 사용하기 쉽다. 유연하지만 프로젝트가 방대해지는 경우 스크립트 관리나 빌드 과정이 복잡해진다. 생명주기(Lifecycle)을 갖지 않아 각각의 결과물에 대한 의존관계 등을 정의해야 한다. Maven XML 기반으로 작성한다. 생명주기(Lifecycle)와 프로젝트 객체 모델(POM, Project Object Model)이란 개념이 도입됐다. Ant의 장황한 빌드 스크립트를 ..