문제 상황
늘 하던 방식대로 ViewModelFactory를 구현했는데 빨간 줄이 뜬다.
Inheritance from an interface with '@JvmDefault' members is only allowed with -Xjvm-default option
해결 방법
이 문제는 LifeCycle 2.5.0.alpha01 과 같은 라이브러리의 문제로 보여진다.
1. 회피하는 방법
사용하는 LifeCycle 라이브러리의 버전을 변경한다.
2. 해당 옵션 변경하여 컴파일하는 방법
build.gradle 파일에 아래의 코드를 추가하여 -Xjvm-default 옵션을 all로 변경한다.
tasks.withType(KotlinCompile).configureEach {
kotlinOptions {
freeCompilerArgs += [
"-Xjvm-default=all",
]
}
}
참고:
https://stackoverflow.com/a/70993001