gradle, implementation 과 compile 의 차이
2020-11-13
넘나 쏙쏙 설명해주시는 블로그가 있어서 이해가 잘되었다. 아래 참고에도 적어놓았다.
물론 깊게 이해하진 못했다.
내가 짠 어플리케이션이 MySpringApplication 이라 치자. 그리고 내 어플리케이션은 Spring MVC 에 의존하고 Spring MVC 는 Spring Core 에 의존한다 치자.
MySpringApplication -> Spring MVC -> Spring Core
여기서 compile 을 사용하여 의존관계를 적었으면, Spring Core 가 변경되었을때, 모든 소스가 rebuild 된다.
하지만 implementation 를 사용하면, Spring Core 가 변경되면 직접 의존하는 Spring MVC 만 rebuild 가 되고,
MySpringApplication 은 build 할 필요가 없다.
최근 버전에는 compile 이 deprecated 되고 api 가 생겼다고한다. 그게 그거같지만 아무튼.
자세한건 참고
참고