如何在不作为模块使用的情况下更新第三方库中的依赖项?

Posted

技术标签:

【中文标题】如何在不作为模块使用的情况下更新第三方库中的依赖项?【英文标题】:How to update dependencies inside of third-party libraries without using as a module? 【发布时间】:2021-11-16 16:03:54 【问题描述】:

当我们在项目中使用第三方库时,这个第三方库可能在其项目中使用了旧的依赖项 ,这可能会导致我们的项目出现错误或错误。我们如何强制第三方库使用与我们的依赖项不冲突的更新版本的依赖项?

【问题讨论】:

【参考方案1】:

您可以从第三方库中排除模块,并在项目中包含该模块的更新版本。

使用exclude 删除库中包含的模块。

dependencies 
    implementation 'com.google.firebase:firebase-inappmessaging-display-ktx:20.1.0', 
        exclude group: 'io.grpc', module: 'grpc-okhttp' // removing grpc-okhttp included with the library
    

    implementation 'io.grpc:grpc-okhttp:1.40.1'

【讨论】:

【参考方案2】:

如果您使用的是 .AAR 文件,则连接到关注开发人员以将依赖项替换为较新的依赖项。

【讨论】:

以上是关于如何在不作为模块使用的情况下更新第三方库中的依赖项?的主要内容,如果未能解决你的问题,请参考以下文章

如何将 git 存储库中的 jar 文件添加为 gradle 中的依赖项?

如何在没有任何副作用的情况下更新 package-lock.json 中的单个依赖项?

如何将依赖项包含到 .aar 库中?

可以在 Typescript 库中的 package.json 中将 @types 库作为正常依赖项吗?

如何强制 IntelliJ 中的 Maven 从本地 .m2 存储库中提取特定依赖项

Composer:如何在不更新旧依赖项的情况下安装另一个依赖项?