2014-09-03 4 views
5

나는 Kotlin에서 here의 예제를 구현하려고합니다. 런타임시이 오류가 발생합니다. "원인 : java.lang.IllegalArgumentException : 인터페이스 정의가 다른 인터페이스를 확장해서는 안됩니다." 구현 된 메소드가 없거나 java 인터페이스를 사용해야 할 때 Java 인터페이스로 Kotlin 특성을 처리 할 수있는 방법이 있습니까?Kotlin 특성 및 개량

public trait RestAPI { 

    [GET("/weather")] 
    fun getList([Query("q")] place: String, 
       [Query("units")] units: String) 
      : Observable<WeatherData> 
}    

그리고 오류를 발생시키는 전화 :

val service = restAdapter?.create(javaClass<RestAPI>()) 
+0

Kotlin의 문제 추적기는 다음과 같습니다. http://youtrack.jetbrains.com/issue/KT-5609 –

+1

@ user1202036 아래의 답변을 검토하고 정확한지 확인하십시오. 코 틀린 (Kotlin)은 '특성'을 '인터페이스'로 변경하고 의미를 다소 변경했습니다. 그리고 위의 @andrey가 언급 한 문제는 해결되었습니다. –

답변

7

이이 문제는 해결되었습니다 여기에 코드입니다. 나는 Kotlin 0.9.976 버전과 정확히 같은 방법으로 구현 된 Retrofit을 사용하고 있습니다.