따라서 Retrofit 2.0.0이 최근에 출시되었으며 사용 방법에 대한 업데이트 된 예제는 없지만 기본 API 호출을 위해 구현하려고합니다. 나는 점점
java.lang.IllegalArgumentException: Unable to create converter for class`
원인
Caused by: java.lang.IllegalArgumentException: Could not locate converter for class orbyt.app.dataclass. Tried:
* retrofit.OkHttpBodyConverterFactory
API 호출을 시도 할 때.
답변
나는 같은 문제에 직면했다. 다음을 추가하여 수정했습니다.
compile 'com.squareup.retrofit2:converter-gson:<latest-version>'
내 build.gradle에
그런 다음 Retrofit 인스턴스를 만들 때 변환기를 지정합니다.
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(Constants.API_BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
답변
Retrofit 2.0에서 Converter는 패키지에 포함되어 있지 않으며 Retrofit 2.0을 사용하는 경우 새 URL 패턴을 따르십시오.
기본 URL : 항상 /로 끝남
@Url : /로 시작하지 마십시오.
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(Constants.API_BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
2.0에 대한 자세한 내용은이 링크를 클릭하십시오. Retrofit 2.0 : 가장 큰 업데이트
또한 build.gradle을 업데이트하십시오.
implementation "com.squareup.retrofit2:converter-gson:$retrofit_version"
그리고 프로젝트 레벨 build.gradle 파일에 확장자를 추가하십시오.
ext {
retrofit_version= "2.x.x"
}
답변
그에 따라 개조 버전 변경
나에게 의존 아래 이미 거기에
compile 'com.squareup.retrofit2:retrofit:2.0.2'
gson 2.0.2의 경우 변경
compile 'com.squareup.retrofit2:converter-gson:2.0.2'
그런 다음 추가
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(Constants.API_BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
답변
Retrofit V2의 경우 다음 리포지토리를 추가합니다.
compile 'com.squareup.retrofit2:retrofit:2.0.0'
compile 'com.google.code.gson:gson:2.6.2'
compile 'com.squareup.retrofit2:converter-gson:2.0.0'
이제 아래 코드를 사용하십시오-
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(API_URL)
.addConverterFactory(GsonConverterFactory.create())
.build();
도움이 되길 바랍니다 🙂
답변
최신 Retrofit 2.0에서는 최신 버전을 가져와야합니다.
compile 'com.squareup.retrofit2:retrofit:2.0.0'
compile 'com.squareup.retrofit2:converter-gson:2.0.0'
compile 'com.squareup.retrofit2:adapter-rxjava:2.0.0'
주의하여 호출하십시오 baseUrl()
. v2.0에서는 “/”로 끝나야하며 메소드에서 “/”로 URL을 시작하지 않습니다.
@POST("classes/info")
Call<ContactBean> insertInfo(@Body ContactBean bean);
그리고 더 많은 정보를 얻기 위해 Retrofit 을 볼 수 있습니다 ! 희망 도움!
답변
에서 내 사건 (코 루틴과 코 틀린) 나는 예외를 받았습니다 :
개 조용 변환기를 만들 수 없습니다.
Queries.exportPdf 메소드의 경우.
원인 : java.lang.IllegalArgumentException : retrofit2.Call에 대한 ResponseBody 변환기를 찾을 수 없습니다.
요청에 문제가 있습니다.
@FormUrlEncoded
@Streaming
@POST("export-pdf/")
suspend fun exportPdf(
@Field("token") token: String
): Call<ResponseBody>
suspend
정의에서 제거 되고 예외가 사라졌습니다.