티스토리 뷰

728x90

상황

Gradle로 멀티모듈 프로젝트를 구성하려고 할 때 하위 프로젝트 (e.g. batch, api server)에서 상위 프로젝트 (e.g. core)의 dependency(e.g. lombok, jpa)를 보지 못 하고 컴파일이 되지 않는 문제가 발생함.

 

기존 코드

project(':batch-server') {

    bootJar.enabled = true
    jar.enabled = false

    dependencies {
        compile project(':core')
    }
}

 

compile은 Gradle 7부터 완전히 제거되었으므로 compileOnly, api 등과 같은 다른 키워드로 바꿔서 해봐도 컴파일이 되지 않음.

 

해결한 코드

//Before
compile project(:'core') 
//or
compileOnly project(:'core') 
//or
api project(:'core')

//After
implementation project(path: ':core', configuration: 'default')

 

혹시 위의 코드로도 해결이 되지 않는 경우에는 아래의 코드를 추가해보는 방법도 추천한다.

 

subprojects {
    apply plugin: 'java-library'
    ...
}

 

레퍼런스

https://stackoverflow.com/questions/47738788/gradle-multi-module-project-cannot-find-module-dependencies

 

Gradle multi module project cannot find module dependencies

I'm trying to build simple java project in Intellij that has many modules. I've got following project structure: project_structure my root project build.gradle: group 'com.wat' version '1.0-SNAP...

stackoverflow.com

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함