打包aar
maven插件已经过时,官方推荐使用这个插件来实现将我们的代码发布到 Apache Maven仓库的功能。
使用
1 | |
任务 Tasks
所有以下任务都归在名为publishing类型为PublishingExtension的扩展下。
generatePomFileForPubNamePublication
为名为PubName的发布创建一个POM文件,填充已知元数据,如项目名称、项目版本和依赖项。生成的POM文件默认放在*build/publications/$pubName/pom-default.xml*.
publishPubNamePublicationToRepoNameRepository
将名为PubName的发布发布到名为RepoName的存储库中。如果您有一个没有显式名称的存储库定义,那么RepoName将是Maven。
publishPubNamePublicationToMavenLocal
将PubName发布复制到本地Maven缓存—通常是*$USER_HOME/.m2/repository*——连同发布的POM文件和其他元数据一起。
publish
依赖于所有publishPubNamePublicationToRepoNameRepository任务
将所有已定义的发布发布到所有已定义存储库的聚合任务。它不包括将发布复制到本地Maven缓存。
publishToMavenLocal
依赖于所有publishPubNamePublicationToMavenLocal任务
将所有已定义的发布复制到本地Maven缓存,包括它们的元数据(POM文件等)。
发布 Publications
Maven 发布中的配置主要有四种:
- 一个component - 通过 MavenPublication.from(org.gradle.api.component.SoftwareComponent).
- Custom artifacts — 通过 MavenPublication.artifact(java.lang.Object) 方法. 查看MavenArtifact 获取所有可配置选项。
- 标准元数据,例如
artifactId,groupIdandversion. - POM文件的其他内容 — 通过 MavenPublication.pom(org.gradle.api.Action).
仓库 Repositories
1 | |
完整例子
1 | |
在Gradle Tool Window中可以看到生成对应的任务。
./gradlew publishToMavenLocal打包并发布到本地的maven库
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!