- @참고: https://compogetters.tistory.com/64

 

api(compile)

project에 의해 노출되는 API의 부분인 project의 production 소스를 compile 하는데 필요한 dependency 이다. 예를 들어 project가 Guava를 사용하고, Guava 클래스의 public interface를 method signature에 노출한다.

 

implementation

project에 의해 노출되는 API의 부분이 아닌 project의 production 소스를 compile 하는데 필요한 dependency 이다. 예를 들어 project가 내부 persistence layer 구현으로 Hibernate 를 사용한다.

 

둘 다 사용을 위해 컴파일이 필요하지만 API의 노출 여부에 차이가 있다.

compile은 연결된 API 모두가 프로젝트에 의해 노출이 되고

implementation은 노출되지 않는다.

블로그 이미지

uchacha

개발자 일지

,