如何提供具有远程依赖项(gradle)的Android库(aar)?
我正在尝试用gradle构建一个具有远程依赖关系的aar文件。下面是一个构建脚本示例。如您所见,我有两个依赖项。我遇到的问题是,当我发布一个版本时,aar文件不包含远程依赖项,因此当我在其他项目中包含aar文件时,我会发现NoClassDefFound错误 我发现,如果我将jar从本地maven repo复制到项目中的libs文件夹中,那么jar确实会包含在发布aar中。如何在aar文件中包含远程依赖项?我在其他地方也读到过,像这样发送依赖项是一种不好的做法,所以如果有更好的方法来完成我想做的事情,我完全赞成如何提供具有远程依赖项(gradle)的Android库(aar)?,android,maven,gradle,aar,Android,Maven,Gradle,Aar,我正在尝试用gradle构建一个具有远程依赖关系的aar文件。下面是一个构建脚本示例。如您所见,我有两个依赖项。我遇到的问题是,当我发布一个版本时,aar文件不包含远程依赖项,因此当我在其他项目中包含aar文件时,我会发现NoClassDefFound错误 我发现,如果我将jar从本地maven repo复制到项目中的libs文件夹中,那么jar确实会包含在发布aar中。如何在aar文件中包含远程依赖项?我在其他地方也读到过,像这样发送依赖项是一种不好的做法,所以如果有更好的方法来完成我想做的事
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.9.+'
}
}
apply plugin: 'android-library'
repositories {
mavenCentral()
mavenLocal()
}
android {
... omitted for brevity
}
dependencies {
compile 'com.somepackage:someartifact:1.0'
compile 'com.anotherpackage:artifact:2.0'
}
尝试使用可传递的
属性:
compile ('group_id:artifact_id:version_name@aar'){
transitive = true
}
您可以检查此链接:
您必须按如下方式创建POM文件:
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>com.sprezzat</groupId>
<artifactId>app</artifactId>
<version>1.0.0</version>
<packaging>aar</packaging>
<dependencies>
<dependency>
<groupId>com.bugsense.trace</groupId>
<artifactId>bugsense</artifactId>
<version>3.6</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>
你好@fxfilmxf,这里有什么进展吗?有什么进展吗?我正在四处寻找解决方案,但找不到任何解决方案:/
compile ('com.somepackage:LIBRARY_NAME:1.0.0@aar'){
transitive=true
}