Hilt를 사용할 경우 모듈 클래스에 반드시 @InstallIn을 추가해야 한다. 그렇지 않으면 컴파일 타임에 오류가 발생한다.
하지만 Dagger2에서 Hilt로 마이그레이션을 하거나 특별한 사유가 있는 경우 모든 모듈 클래스에 @InstallIn을 추가하기 어려운 경우가 있다. 이때 다음 예제코드 처럼, 해당 모듈의 그레이들 스크립트에 disableModulesHaveInstallInCheck 옵션을 추가 할 수 있다.
// build.gradle.kts
android {
...
defaultConfig {
...
javaCompileOptions.annotationProcessorOptions.arguments["dagger.hilt.disableModulesHaveInstallInCheck"] = "true"
}
}
gradle 명령어를 사용하여 컴파일(빌드)하는 경우에는 다음과 같이 플래그를 추가 할 수 있다.
-Adagger.hilt.disableModulesHaveInstallInCheck=true.
또는 개별적으로 모듈 클래스에 @DisableInstallInCheck 를 추가하여 @InstallIn 검사를 비활성화 시킬 수 있다.
0개의 댓글