error: [Hilt] Expected @AndroidEntryPoint to have a value. Did you forget to apply the Gradle Plugin?
error: [Hilt]
public final class HiltTestActivity extends androidx.appcompat.app.AppCompatActivity {
^
Expected @AndroidEntryPoint to have a value. Did you forget to apply the Gradle Plugin? (dagger.hilt.android.plugin)
See https://dagger.dev/hilt/gradle-setup.html
[Hilt] Processing did not complete. See error above for details.
Dagger Hilt
를 포함한 뒤 테스트 코드를 작성하다 다음과 같은 에러를 마주쳤습니다. 이전까지는 문제 없이 사용하고 있었기 때문에 당연히 @AndroidEntryPoint
는 적용된 상황입니다.
@AndroidEntryPoint
class HiltTestActivity : AppCompatActivity()
다행히 에러 메시지에 나와있는 링크에서 답을 찾을 수 있었습니다.
https://dagger.dev/hilt/gradle-setup.html
Gradle Build Setup
Hilt dependencies To use Hilt, add the following build dependencies to the Android Gradle module’s build.gradle file: dependencies { implementation 'com.google.dagger:hilt-android:2.38.1' annotationProcessor 'com.google.dagger:hilt-compiler:2.38.1' // Fo
dagger.dev
다른 프로세서 인수 적용
Hilt Gradle 플러그인은 annotation processor arguments를 설정합니다. 사용 중인 다른 라이브러리가 annotation processor arguments를 설정하는 경우, arguments를 재정의(=)하는 대신 추가(+=)하고 있는지 확인하십시오.
다음은 +=를 사용하여 Hilt arguments 재정의를 방지하는 예시입니다.
javaCompileOptions {
annotationProcessorOptions {
arguments += ["foo" : "bar"]
}
}
+가 누락되고 arguments가 재정의되면 Hilt가 다음과 같은 오류를 표시하며 컴파일에 실패합니다:
Expected `@HiltAndroidApp` to have a value. Did you forget to apply the Gradle Plugin?
제 경우엔 room 라이브러리의 schema location을 정의하다 생긴 문제였습니다. 모두 문제 해결하셨길 바라며 즐거운 작업하시길 바랍니다~~