android 依赖最新版本,android-两个依赖项使用相同的库,但版本不同

看来我有Picasso库2.4.0,但twitter也使用该库的2.3.2版本.我的问题是… 2.3.2库是否随新版本一起下载?还是仅下载2.4.0并由Twitter使用?我应该排除2.3.2一个,然后twitter会自动使用2.4.0吗?这样安全吗?较新的版本可能与twitter库不兼容,不是吗?

在这种情况下,我感到困惑.我应该排除哪个库(如果可以排除的话).

gradle -q app:dependencyInsight --dependency picasso --configuration compile

com.squareup.picasso:picasso:2.4.0 (conflict resolution)

\--- compile

com.squareup.picasso:picasso:2.3.2 -> 2.4.0

\--- com.twitter.sdk.android:tweet-ui:1.1.0

+--- compile

\--- com.twitter.sdk.android:twitter:1.1.1

\--- compile

(*) - dependencies omitted (listed previously)

解决方法:

Gradle offers the following conflict resolution strategies:

Newest: The newest version of the dependency is used. This is Gradle’s default strategy, and is often an appropriate choice as long as versions are backwards-compatible.

Fail: A version conflict results in a build failure. This strategy requires all version conflicts to be resolved explicitly in the build script. See ResolutionStrategy for details on how to explicitly choose a particular version.

因此Gradle将使用Picasso 2.4.0管理依赖项.

这会是一个问题吗?可能吧.如果Twitter使用的方法和/或签名已从2.3.x更改为2.4,则会遇到问题.如果它们彼此向后兼容,您将不会有任何问题.

现在,我确实看到Twitter SDK实际上已将其Picasso库升级到2.5.2(最新版本).如果您的项目导入了毕加索,那么您也可以对其进行更新(也许应该).如果它是另一个模块中的依赖项,那么您也可以更新该模块.

另一个选择是将毕加索降级到2.3.2或使用ResolutionStrategy使用较低版本.除非您必须,否则我不建议您这样做.

标签:android-gradle,build-gradle,gradle,android

来源: https://codeday.me/bug/20191026/1936524.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值