본문 바로가기
Unity

Unity Android dependencyResolutionManagement

by 데릭님 2025. 4. 14.
반응형

# 🎯 Unity에서 `dependencyResolutionManagement`가 등장한 이유와 버전별 변화 정리

Unity로 Android 앱을 빌드할 때, 어느 순간부터 `settings.gradle`에 생소한 코드 블록이 보이기 시작합니다:

```gradle
dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
    }
}

 

이 글에서는 이 설정이 언제부터 생겼는지, 왜 필요한지, 그리고 주의할 점은 무엇인지를 정리해보겠습니다.

 

 

🧩 이게 뭔가요? — 

dependencyResolutionManagement

 

dependencyResolutionManagementGradle 7.0 이상에서 새롭게 도입된 설정 방식으로, 프로젝트의 의존성 관리 방식을 더 명확하게 제어하기 위해 만들어졌습니다.

 

Unity에서는 2022.2 버전부터 이 방식을 자동으로 채택하기 시작했어요.

 

 

⚠️ 주의사항

 

  1. 하위 모듈에서 repositories {} 쓰면 에러 납니다.
    • FAIL_ON_PROJECT_REPOS 때문입니다.
    • 꼭 추가해야 할 경우엔 repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS)로 바꿔야 합니다.
  2.  
  3. 로컬 AAR, Maven, Git 라이브러리 등을 쓸 경우
    • 반드시 settings.gradle 또는 build.gradle(Project)에서 등록해줘야 합니다.
  4.  
  5. Unity가 자동 생성한 설정을 잘못 수정하면 빌드 에러 유발 가능
    • 가능하면 Unity의 Gradle Template을 활용해 커스터마이징하는 것이 안전합니다.
  6.  

 


 

📌 마무리

 

dependencyResolutionManagement는 Unity가 Android 빌드를 보다 안정적으로 만들기 위해 도입한 설정입니다.

처음엔 낯설 수 있지만, 멀티모듈 구조에서 의존성 충돌을 방지하고 빌드 환경을 통합 관리할 수 있는 좋은 방법이에요.

반응형