当前位置: 首页 > 知识库问答 >
问题:

如何检查Gradle依赖项是否有新版本?

冯和硕
2023-03-14

在Android Studio中,当我使用版本号中的代码时,例如:
com.Android支持:recyclerview-v7:21
我收到“避免在版本号中使用”警告。

但是当我使用特定的版本号时,我不能总是使用最新的版本。我的项目中有很多依赖项。

如何检查依赖项是否有更新的版本?

当存在更新版本的依赖项时,是否有Android Studio插件(或类似插件)通知我?

编辑:
Android Studio突出显示了过时的Android支持库和Google play服务。但这不适用于其他自定义库。


共有3个答案

锺离嘉容
2023-03-14

除了Android Studio的内置功能之外,还有一个名为Gradle版本插件的不错的gradle插件,它可以完全满足您的需求,具有普通gradle扩展的好处,这意味着不绑定到任何IDE-只是纯粹的Gradle东西。

Gradle版本插件可以以人类可读的纯文本形式创建报告,但也可以将其转储为JSON或XML,这对于自动化/脚本化处理非常有用。

用法非常简单。添加到gradle文件后,您只需执行以下操作:

$ ./gradlew dependencyUpdates

它应该生成如下所示的项目依赖报告:

------------------------------------------------------------
: Project Dependency Updates (report to plain text file)
------------------------------------------------------------

The following dependencies are using the latest milestone version:
 - com.github.maksim88:PasswordEditText:v0.9
 - com.marcinorlowski:webnet-log:1.0.3
 - com.nulab-inc:zxcvbn:1.2.2

The following dependencies exceed the version found at the milestone revision level:
 - com.hannesdorfmann.fragmentargs:annotation [4.0.0-SNAPSHOT <- 3.0.2]
 - com.hannesdorfmann.fragmentargs:bundler-parceler [4.0.0-SNAPSHOT <- 3.0.2]
 - com.github.bumptech.glide:glide [3.7.0 <- 3.6.1]
 - com.hannesdorfmann.fragmentargs:processor [4.0.0-SNAPSHOT <- 3.0.2]

The following dependencies have later milestone versions:
 - com.github.PhilJay:MPAndroidChart [v2.2.5 -> v3.0.1]
 - com.android.support:appcompat-v7 [25.1.0 -> 25.1.1]
 - com.jakewharton:butterknife [8.4.0 -> 8.5.1]

Generated report file build/dependencyUpdates\report.txt

有关广泛使用示例,请参阅文档。

丁阳炎
2023-03-14

这现在作为Lint检查内置到Android Studio中。您可以在此处启用它:

设置

本次检查说明:

可用的较新库版本

此检测器使用中央存储库检查此项目使用的依赖项是否有更新的版本。这类似于GradleDependency检查,它检查Android SDK工具和库中可用的更新版本,但这适用于任何MavenCentral依赖项,并且每次都连接到库,这使其更灵活但也更慢。

由于这可能会导致减速,我建议定期手动运行它,而不是总是打开它。您可以通过以下方式做到这一点:

分析

然后搜索“较新的可用库版本”,并在您的模块上运行它。

编辑:以上内容应在Android Studio 2.3中起作用。如果您使用的是旧版本(应更新),以下内容可能会有所帮助:

请注意,您必须启用检查才能手动运行它-因此(从Android Studio 2.0 Beta 2开始),您需要在设置中找到检查,启用它,然后按名称运行它,然后再次禁用它(以恢复以前的性能)。

冯卜鹰
2023-03-14

较新版本的Android Studio不会在“项目结构”对话框中显示版本更新。相反,Adam-s的答案对于Android Studio 3是正确的

分析

然后搜索“可用的较新库版本”

Android Studio 2.2开始,一个新的项目结构对话框显示了您的应用程序正在使用的依赖项列表以及来自本地和远程存储库的可用更新。

  • 通过转到Android Studio激活它

有关旧版本的Android Studio,请参阅下面的其他回复。

 类似资料:
  • 在Android Studio中,当我在版本号中使用(如)时,我会得到“在版本号中避免使用+”的警告。当我使用特定的版本号时,我不能总是使用最新的版本。我的项目有很多依赖。如何检查依赖项是否有更新的版本?是否有一个Android Studio插件-或类似的东西-通知我当有一个新版本的依赖? 编辑:Android studio突出了过时的Android支持库和Google play服务。但这对于其他

  • 问题内容: 可以运行以了解模块任务的依赖性。有没有办法找到 buildscript依赖 的 传递依赖 ? 示例: 直接取决于: 可以在MVNRepository上看到。但是,这些工件有其自己的依赖性。有没有找到方法而无需手动遍历整个依赖树的方法? 为了澄清起见,我正在谈论的类路径由以下方式定义: 问题答案: 您可以使用以下命令: Udacity提供了很棒的Android Gradle 教程,但是您

  • 告诉Gradle以下内容的最简单方法是什么: 检索“junit”依赖项并获取其最新版本。 管理Maven和Ivy仓库对我来说有点新鲜。我尝试了以下步骤,它们导致错误: > 编写,并按以下方式设置存储库: 尝试使用Spring Source Ivy仓库: 也许我误解了什么。为什么获取最新版本的依赖项会如此困难?

  • 问题内容: 问题。 Gradle依赖管理使得: 没有简便的方法来检查依赖项更新的可用性(仅使用某些第三方插件,如ben-manes / gradle-versions-plugin)并下载更新以替换旧版本; 从远程存储库下载依赖项工件,然后将其存储在gradle缓存中,并在后续构建中重用;但是项目的成功编译必须不依赖于与Internet的连接,远程存储库的可用性以及这些存储库中特定版本的依赖项。

  • 问题。 分级依赖项管理是这样进行的: 检查依赖更新的可用性(仅使用一些第三方插件,如Ben-Manes/Gradle-Versions-Plugin),并下载替换旧版本的更新是不容易的; 依赖项构件从远程存储库下载,然后存储在gradle缓存中,并在后续构建中重用;但项目的成功编译不能依赖于与Internet的连接、远程存储库的可用性以及这些存储库中依赖项的特定版本的存在。 null

  • 问题内容: 告诉以下内容的最简单方法是: 检索“ junit”依赖项并获取其最新的“ release”版本。 管理Maven和Ivy存储库对我来说是新的。我尝试了以下步骤,但它们导致错误: 在存储库设置为only的情况下写 (但是,如果我说“ junit:junit:4.10”,它可以工作)。 使用存储库设置以下列方式写入: } 尝试使用Spring Source Ivy存储库: } 也许我误会了