Gradle从aar中排除类

ecbunoof  于 2023-06-23  发布在  其他
关注(0)|答案(2)|浏览(313)

我在我的依赖中使用lib Gson,我导入了一个.aar,其中包含一些从Gson导入到项目中的类。当我构建我的项目时,我不断得到重复的类,bcz它依赖于我的依赖和aar类。
如何从aar中排除gson类?
我一直在尝试:

  • 排除组:我认为这不是工作,因为它不是来自aar的依赖,而是内部的类。
  • 可传递为真,原因与之前相同

我可以吗?或者我应该得到其他的.aar与gson作为dependecy?

8ehkhllq

8ehkhllq1#

通常.aar包括与.pom文件,其中包括所有依赖“aar库”使用。
如果您正在创建自己的库并在另一个应用程序中使用它,请参阅下面的链接。https://medium.com/swlh/android-library-kotlin-creation-access-deploy-problems-fixes-everything-you-want-to-c1a1701f0e8f
或者
尝试以下操作

implementation(name: '××××××× aar package', ext: 'aar') {
    exclude module: 'gson'
}

如果有帮助请告诉我

ghg1uchk

ghg1uchk2#

1.下载并解压缩原始的. aar库文件
1.移除要从库中排除的特定类文件

unzip original_lib.aar -d out/
cd out/
zip -d classes.jar "com/something/ClassToBeRemoved.class"
jar cvf ../my_new_lib.aar

现在您有了一个名为my_new_lib.aar的新AAR库文件,它排除了指定的类文件。
您可以使用以下方法在Gradle中包含本地. aar库:

implementation files('aar/my_new_lib.aar')

请记住将"com/something/ClassToBeRemoved.class"替换为要排除的类文件的实际路径和名称。此外,请确保在执行这些命令时位于正确的目录中。
此方法允许您手动从AAR库中删除特定类文件。

相关问题