API

    [Gradle] dependency 차이점 (CompileOnly, RuntimeOnly, api, implementation)

    들어가며 DB를 연동하면서 Gradle 에 runtimeOnly 'mysql:mysql-connector-java:8.0.28' 의존성을 추가해주었다. 아무 생각 없이 사용하였었는데 리뷰어인 토니로부터 이렇게 퀴즈를 받게 되었다 ! Classpath 클래스 혹은 Jar파일이 존재하는 위치이다. gradle의 Dependencies는 compieClasspath, runtimeClasspath, testCompileClasspath, testRuntimeClasspath 로 구분이 된다. 앞 2개는 로직을 실행할 때, 뒤 2개는 test 로직을 수행할 때 사용된다. CompileCalsspath 컴파일을 잘 수행하기 위해 필요한 클래스 및 jar을 나타낸다. RuntimeClasspath 런타임시 애플리..