教育目的で簡単なRetroFitアプリケーションを作成し、IntelliJ IDEAをIDEとして使用しています。
Retrofitライブラリを適切にインポートしました(少なくとも私は持っていると思います)が、Gson Converterパッケージを取得できません。 Googleのgson.jarがインストールされていますが、これらのライブラリのいずれにも「GsonConverterFactory」というクラスがありません。これはJSONを解析するために必要です。
編集:Windowsを使用しています。
_compile 'com.squareup.retrofit:converter-gson:2.0.0-beta2'
_を_build.gradle
_ファイルに追加して依存関係を解決するか、対応するjarをbulidパスに追加します。
次にGsonConverterFactory.create()
を使用して_Converter Factory
_を取得します
_2.0.0-beta1
_を使用しようとしましたが、以下に示すようにファクトリの不正な型変換エラーが発生したため、_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
_
したがって、私の提案は_2.0.0-beta2
_を使用することです
私のbuild.gradleには、レトロフィットを解決するために次の依存関係があります。
_ compile 'com.squareup.retrofit:retrofit:2.0.0-beta2'
compile 'com.squareup.retrofit:converter-gson:2.0.0-beta2'
_
レトロフィット2を使用している場合は、convert-gson
パッケージを含める必要があります。 gradleビルドの場合、compile 'com.squareup.retrofit:converter-gson:2.0.0-beta3'
を依存関係セクションに追加できます。
他のビルドシステムの場合、またはjarをダウンロードするには、Maven Central convert-gson ページをチェックアウトします。
これを試して
/* 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'
module:app build.gradle add
compile 'com.squareup.retrofit2:converter-gson:[retrofit2 version]'
上記のバージョンは、retrofit2バージョンと同じです。たとえば、retrofit2バージョンは2.1.0です。build.gradleは次のようになります。
compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'