Je crée une application RetroFit simple à des fins éducatives et utilise IntelliJ IDEA comme IDE.
J'ai importé correctement la bibliothèque Retrofit (du moins je pense que oui) mais je ne suis pas en mesure d'obtenir le package Gson Converter. J'ai le gson.jar de google installé mais nulle part dans aucune de ces bibliothèques il n'y a une classe appelée "GsonConverterFactory", qui est nécessaire pour moi pour analyser JSON.
Edit: je suis sur Windows.
Ajoutez compile 'com.squareup.retrofit:converter-gson:2.0.0-beta2'
À votre fichier build.gradle
Et obtenez la résolution de la dépendance ou ajoutez les fichiers JAR correspondants à votre chemin Bulid.
puis utilisez GsonConverterFactory.create()
pour obtenir le Converter Factory
J'ai essayé d'utiliser 2.0.0-beta1
Mais cela m'a donné une erreur de conversion de type illégale pour l'usine comme indiqué ci-dessous, donc déplacé vers 2.0.0-beta2
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
Donc, ma suggestion est d'utiliser 2.0.0-beta2
mon build.gradle a les dépendances suivantes pour résoudre le retrofit.
compile 'com.squareup.retrofit:retrofit:2.0.0-beta2'
compile 'com.squareup.retrofit:converter-gson:2.0.0-beta2'
Si vous utilisez Retrofit 2, vous devez inclure le convert-gson
paquet. Pour les versions Gradle, vous pouvez ajouter compile 'com.squareup.retrofit:converter-gson:2.0.0-beta3'
à votre section des dépendances.
Pour d'autres systèmes de build, ou pour télécharger le pot, consultez la page Maven Central convert-gson .
Essaye ça
/* JSON */
compile 'com.google.code.gson:gson:2.5'
compile 'com.squareup.retrofit2:converter-gson:2.0.0-beta4'
// >Retrofit & OkHttp
compile ('com.squareup.retrofit2:retrofit:2.0.0-beta3') {
// exclude Retrofit’s OkHttp peer-dependency module and define your own module import
exclude module: 'okhttp'
}
compile 'com.squareup.okhttp3:okhttp:3.0.1'
dans votre module: app build.gradle add
compile 'com.squareup.retrofit2:converter-gson:[retrofit2 version]'
la version ci-dessus est identique à votre version retrofit2, donc par exemple votre version retrofit2 est 2.1.0, que votre build.gradle devrait être comme ceci:
compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'