Android 如何在我的maven本地存储库中使用gradle发布现有aar?
我有一个具有以下结构的项目:Android 如何在我的maven本地存储库中使用gradle发布现有aar?,android,gradle,android-gradle-plugin,maven-publish,Android,Gradle,Android Gradle Plugin,Maven Publish,我有一个具有以下结构的项目: 项目根 格雷德尔先生 模块1/ 格雷德尔先生 人工制品1.aar 模块2/ 我的artifact1.aar是一个已编译的工件,我无法访问源代码 我的模块1渐变生成文件如下所示: configurations.maybeCreate("default") artifacts.add("default", file('artifact1.aar')) 有了它,.aar中包含的代码可以在模块2中通过简单地引用gradle项目依赖项来获得 但是我想在我的mave
- 项目根
- 格雷德尔先生
- 模块1/
- 格雷德尔先生
- 人工制品1.aar
- 模块2/
configurations.maybeCreate("default")
artifacts.add("default", file('artifact1.aar'))
有了它,.aar中包含的代码可以在模块2中通过简单地引用gradle项目依赖项来获得
但是我想在我的maven local中发布.aar,以便其他android项目可以访问它
我检查了maven发布插件和android maven发布插件,但这两个插件似乎是在java库插件或com.android.library插件之后调用的
所以我的问题是如何在我的maven本地存储库中发布一个带有gradle的现有aar
我在4.8版中使用了gradle。我在本例中使用了rxbinding aar
// rxbinding/build.gradle
apply plugin: "maven-publish"
configurations.maybeCreate("default")
def publishArtifact = artifacts.add("default", file('rxbinding-2.1.1.aar'))
publishing {
publications {
aar(MavenPublication) {
groupId = 'my.sample.artifact'
artifactId = 'somerandomname'
version = '1.0.0'
artifact publishArtifact
}
}
}
您可以将maven publish
插件应用于任何项目,但是您必须手动定义工件,就像我们刚才所做的那样。一些插件(如java库
插件)与maven publish
插件集成,以自动发布项目的默认工件/gradlew rxbinding:PublishToAvenLocal
——这将把工件放入本地repo中实现'my.sample.artifact:somerandomname:1.0.0'
添加到您机器上任何项目的消费者应用程序中我还创建了一个插件,您可以在其中进行尝试。如果您安装了maven,您可以使用
maven安装插件的目标。
谢谢Balasz:)。正是我想要的。