[Gradle] implementation과 api, compile의 차이는 무엇인가?
Gradle은 라이브러리 의존성을 관리하기 위해 implementation
, api
, compile
등 여러 키워드를 제공한다.
implementation
, api
는 Android plugin 3.0.0 이후부터 사용 가능한 키워드다.
implementation
: 의존성이 컴파일 클래스 경로에만 추가된다.
api
: 의존성이 컴파일 클래스 경로와, 언타임 클래스 경로 모두에 추가된다.
api
키워드는 의존성을 모듈 외부로 전파하게 한다.