あるライブラリの依存関係を書いたところ、アップロードされているライブラリはaar
であるにもかかわらず、aar
ではなく、jar
ファイルを探しに行ってしまいエラーとなってしまう状況に遭遇しました。
これの原因はライブラリの公開情報に不足があるなどが考えられますが、利用者側で修正することはできないので、gradleの記述でどうにかしなければなりません。
@aar
をつける
以下のように依存ライブラリを文字列で指定している場合は、バージョン名の後ろに @aar
をつけて、aar
を参照するように指定することができます。
build.gradle.kts
implementation("com.example:foo:1.2.3@aar")
ext
を指定する
依存ライブラリをセクションごとの情報に分解して指定している場合は、ext
パラメータとしてaar
を指定します。
build.gradle.kts
implementation(group = "com.example", name = "foo", version = "1.2.3", ext = "aar")
artifact type を指定する
Gradle Version Catalog を使っている場合は前項までの方法が使えませんが、こちらであれば可能です。
dependencyConfiguration にて artifact type に aar
を指定します。
build.gradle.kts
implementation(libs.foo) {
artifact {
type = "aar"
}
}
調べた範囲では gradle version catalog 自体でこちらを指定する方法は見つかりませんでした。