gpt4 book ai didi

android - 如何将 Android 库发布到 Maven 存储库以方便使用?

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:59:56 25 4
gpt4 key购买 nike

我使用 this 将我的 Android 库(带有依赖项)发布到 AWS S3 maven 存储库指导。

在新项目中,我添加了S3 bucket作为Maven仓库,如果在新项目的build.gradle文件中添加如下内容,就可以成功使用了:

implementation ('com.mydomain:my_library:1.4:release@aar') {
transitive=true
}

(需要“transitive=true”以便包含库的依赖项。)

但是,我希望其他人能够使用它的简化版本,就像我看到很多其他库所做的那样:

implementation 'com.mydomain:my_library:1.4'

当我这样做时,我在代码中遇到“无法解析符号”错误,并且(当然)在我尝试构建我的项目时遇到“不存在”错误。

我的图书馆的 POM 文件如下所示。有什么我可以在那里更改的,以便我可以使用上面的“简化”实现行,或者我可以做些什么吗?

注意:我尝试用“ aar ”替换“ pom ”,使缓存无效,然后再次运行,但行为是相同的。

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>com.mydomain</groupId>
<artifactId>my_library</artifactId>
<version>1.4</version>
<packaging>pom</packaging>
<dependencies>
<dependency>
<groupId>com.android.support</groupId>
<artifactId>appcompat-v7</artifactId>
<version>27.1.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.android.support.constraint</groupId>
<artifactId>constraint-layout</artifactId>
<version>1.1.3</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.android.support</groupId>
<artifactId>design</artifactId>
<version>27.1.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>io.reactivex.rxjava2</groupId>
<artifactId>rxandroid</artifactId>
<version>2.1.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>io.reactivex.rxjava2</groupId>
<artifactId>rxjava</artifactId>
<version>2.2.4</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.github.instacart.truetime-android</groupId>
<artifactId>library-extension-rx</artifactId>
<version>3.3</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.google.dagger</groupId>
<artifactId>dagger-android</artifactId>
<version>2.15</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.nostra13.universalimageloader</groupId>
<artifactId>universal-image-loader</artifactId>
<version>1.9.5</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.google.firebase</groupId>
<artifactId>firebase-core</artifactId>
<version>16.0.6</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.google.firebase</groupId>
<artifactId>firebase-messaging</artifactId>
<version>17.3.4</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>

最佳答案

如果您的项目恰好托管在 Github 上,请考虑使用 https://jitpack.io/相反。

Jitpack 允许您直接从 Github 非常轻松地将您的库发布到 gradle。

虽然这个答案没有直接回答您的问题,但它确实提供了一个有效且更简单的替代方案。

关于android - 如何将 Android 库发布到 Maven 存储库以方便使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54740793/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com