翻新转换器工厂不能访问GsonConverterFactory
我已经将这些依赖包括在我的项目中:
编译'com.squareup.retrofit:翻新:2.0.0-beta2'
编译'com.squareup.retrofit:converter-gson:2.0.0-beta1'
我有一个课程,我将通过改进来访问我的api:
public static <S> S createService(Class<S> serviceClass, String baseUrl) { Retrofit builder = new Retrofit.Builder() .baseUrl(baseUrl) .addConverterFactory(GsonConverterFactory.create()) .build(); RestAdapter adapter = builder.build();*/ return builder.create(serviceClass); }
而现在,它给了我这个编译时错误:
错误:(24,17)错误:类Builder中的方法addConverterFactory不能应用于给定的types; 必需:发现工厂:GsonConverterFactory原因:实际参数GsonConverterFactory不能通过方法调用转换转换为Factory
我该如何解决这个问题? 我跟着文档。 哪里不对?
尝试使用相同的版本翻新和converter-gson – 2.0.0-beta2
。 您正在使用beta2
进行改造,并将beta1
用于转换器。
compile 'com.squareup.retrofit:retrofit:2.0.0-beta2' compile 'com.squareup.retrofit:converter-gson:2.0.0-beta2'
重要的提示!
自2.0.0-beta3
版本以来,改装更改了软件包名称。 现在你应该使用com.squareup.retrofit2
。 这里是例子:
compile 'com.squareup.retrofit2:retrofit:2.2.0' compile 'com.squareup.retrofit2:converter-gson:2.2.0'
使用最新的Beta 2.0.3版本,您需要添加:
compile 'com.squareup.retrofit2:retrofit:2.0.0-beta3' compile 'com.squareup.retrofit2:converter-gson:2.0.0-beta3'
确保将改造库版本与gson转换器版本匹配。
error: method addConverterFactory in class Builder cannot be applied to given types; required: Factory found: GsonConverterFactory reason: actual argument GsonConverterFactory cannot be converted to Factory by method invocation conversion
如果你得到这个错误,原因是错误的依赖包括在内。
在应用程序build.gradle
文件中添加/更改依赖项
compile 'com.squareup.retrofit:retrofit:2.0.0-beta2' compile 'com.squareup.retrofit:converter-gson:2.0.0-beta2'
确保转换器版本是2.0.0-beta2
而不是2.0.0-beta1
。
这是最新的:
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'
如果您使用testing版本:
compile 'com.squareup.retrofit:retrofit:2.0.0-beta2' compile 'com.squareup.retrofit:converter-gson:2.0.0-beta2' compile 'com.squareup.retrofit:adapter-rxjava:2.0.0-beta2'