![](/img/trans.png)
[英]aar dependency error in my android project using android-maven-gradle-plugin
[英]Gradle/Maven - Error loading aar dependency
我正在將aar文件發布到內部Maven存儲庫中,但是當我嘗試像這樣引用它時:
dependencies {
compile 'com.example.android:example-api:0.3-SNAPSHOT'
}
我收到以下錯誤:
A problem occurred configuring project ':sdk-sample'.
> Artifact 'com.example.android:example-api:0.3-SNAPSHOT:example-api.jar' not found.
這讓我感到困惑,因為我沒有上傳的jar文件,而是aar。
gradle生成並上傳的POM文件如下所示:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.example.android</groupId>
<artifactId>example-api</artifactId>
<version>0.3-SNAPSHOT</version>
<packaging>aar</packaging>
<dependencies>
<dependency>
<groupId>org.springframework.android</groupId>
<artifactId>spring-android-rest-template</artifactId>
<version>1.0.1.RELEASE</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.2.4</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.squareup.okhttp</groupId>
<artifactId>okhttp</artifactId>
<version>1.3.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.springframework.android</groupId>
<artifactId>spring-android-core</artifactId>
<version>1.0.1.RELEASE</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>
如果我這樣引用它:
dependencies {
compile 'com.example.android:example-api:0.3-SNAPSHOT@aar'
}
然后,它會成功找到它,但是依賴項沒有正確下載,當我調用使用依賴項的方法時,在運行時出現NoClassDefFoundError。
知道發生了什么嗎?
需要根據您的依賴性將可傳遞屬性設置為true
:
compile ('com.example.android:example-api:0.3-SNAPSHOT@aar') { transitive = true }
對於aar
依賴項,可能應該在Gradle中將其默認更改為true
(因為似乎對於jar
)。
我有同樣的問題。 在依賴項上附加“ @aar”對我來說已經解決了。 現在編譯並運行沒有問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.