프로젝트에 아래와 같은 문제가 발생되어 구글링을 해보았다.
Fatal Exception: java.lang.IllegalArgumentException
Parameter specified as non-null is null : ~~
현재 개발 중인 프로젝트가 자바와 코틀린을 병행하여 사용하고 있는 상황인데 알고 보니 코틀린에서는 notnull이었으나 자바에서는 null이 올 수도 있어서
자바에서
@Override
public void onFinish(Result<T> result) {
}
라는 코드가 있다면
코틀린에서는
override fun onFinish(result: Result<Void?>?) {
}
이렇게 불러와야한다는 뜻이다.
여기서 우리가 실수하는 부분들은
override fun onFinish(result: Result<Void?>) {
}
위와 같이 ?를 하나 제외한다고 쳐도 코드상에서는 아무 문제가 없다는 것이다..ㅋㅋㅋㅋ
다음부터는 이같은 실수는 좀 지양할 수 있도록 노력해야겠다..