如何在包含私有依赖项的 github 上发布 android 库
How to publish android library on github containing private dependencies
我的工作是开发一个 android 库(我的第一个库)供其他公司的应用程序使用。问题是,我需要使用来自第三方供应商的依赖项,他们将它们保密(我需要在 build.gradle 文件中设置凭据才能下载它们),我们第一个消费应用程序的团队告诉我们他们得到了关于那个的错误(他们找不到所说的依赖项)。我们从我们的供应商处下载它们并将它们(价值 2GB)上传到 nexus 作为快速修复并且它有效。
事实是,公司已决定从自托管 gitlab/nexus 迁移到云端 github。他们成立了一个组织,我们(开发者)都在里面。
我已经创建了自己的存储库,上传了我们的最新版本并创建了脚本来发布我们的库。我在 github 存储库中看到了我以前上传到 nexus 的相同文件。我告诉消费应用程序的人给它一个测试,他们说他们发现了同样的错误:他们找不到提供者的私有依赖项。
此时我不知道该怎么办。
- 找到依赖项并将它们上传到github?这有两个问题。首先,我不知道如何上传这些依赖项,因为它们不属于我在 github 中拥有的任何存储库。其次,每次提供商发布一个版本时,我们都需要这样做,以保持依赖项是最新的。
- 让供应商建立他们的依赖关系public? IDK 如果他们会接受这个,也不知道这是否足以解决我们的问题。 consumng 应用程序是否应该在其 build.gradle 上声明 my 依赖项的来源(url),或者 pom 文件是否应该已经包含所有内容?我以为是后者,结果这个问题证明我错了。
情况非常具体,我无法在 github 文档中找到任何相关信息。有人遇到过类似问题吗?
我发现这个插件很容易让构建一个胖 aar:https://github.com/kezong/fat-aar-android
我的工作是开发一个 android 库(我的第一个库)供其他公司的应用程序使用。问题是,我需要使用来自第三方供应商的依赖项,他们将它们保密(我需要在 build.gradle 文件中设置凭据才能下载它们),我们第一个消费应用程序的团队告诉我们他们得到了关于那个的错误(他们找不到所说的依赖项)。我们从我们的供应商处下载它们并将它们(价值 2GB)上传到 nexus 作为快速修复并且它有效。
事实是,公司已决定从自托管 gitlab/nexus 迁移到云端 github。他们成立了一个组织,我们(开发者)都在里面。
我已经创建了自己的存储库,上传了我们的最新版本并创建了脚本来发布我们的库。我在 github 存储库中看到了我以前上传到 nexus 的相同文件。我告诉消费应用程序的人给它一个测试,他们说他们发现了同样的错误:他们找不到提供者的私有依赖项。
此时我不知道该怎么办。
- 找到依赖项并将它们上传到github?这有两个问题。首先,我不知道如何上传这些依赖项,因为它们不属于我在 github 中拥有的任何存储库。其次,每次提供商发布一个版本时,我们都需要这样做,以保持依赖项是最新的。
- 让供应商建立他们的依赖关系public? IDK 如果他们会接受这个,也不知道这是否足以解决我们的问题。 consumng 应用程序是否应该在其 build.gradle 上声明 my 依赖项的来源(url),或者 pom 文件是否应该已经包含所有内容?我以为是后者,结果这个问题证明我错了。
情况非常具体,我无法在 github 文档中找到任何相关信息。有人遇到过类似问题吗?
我发现这个插件很容易让构建一个胖 aar:https://github.com/kezong/fat-aar-android