在 Android Studio 中,当我在版本号中使用 +
时,例如:
com.android.support:recyclerview-v7:21.+
我收到“避免在版本号中使用 +”警告。
但是当我使用特定版本号时,我不能总是使用最新版本。我的项目中有很多依赖项。
如何检查依赖项是否有更新版本?
当有较新版本的依赖项时,是否有 Android Studio 插件(或类似插件)通知我?
编辑:Android Studio 突出显示过时的 Android 支持库和 Google play 服务。但这不适用于其他自定义库。
https://i.stack.imgur.com/yZ2DO.png
更新(2018 年 5 月 23 日):
较新版本的 Android Studio 不会在“项目结构”对话框中显示版本更新。相反,Adam-s 的答案是 Android Studio 3+ 的正确答案
分析 > “按名称运行检查”
然后搜索“Newer Library Versions Available
”
以前的方式:
从 Android Studio 2.2
开始,一个新的 Project Structure
对话框显示您的应用程序正在使用的依赖项列表以及来自本地和远程存储库的可用更新。
通过转到 Android Studio > Settings > Build, Execution, Deployment > Gradle > Experimental 激活它并检查 Use new Project Structure 对话框(感谢@jessehensold)
然后通过转到文件 > 项目结构 > 消息打开它
https://i.stack.imgur.com/cLQjA.png
对于旧版本的 Android Studio,请参阅下面的其他回复。
这现在作为 Lint 检查内置在 Android Studio 中。您可以在此处启用它:
设置 > 编辑器 > 检查 > “可用的较新库版本”
本次检查说明:
可用的较新库版本 此检测器检查中央存储库以查看是否有可用于此项目使用的依赖项的较新版本。这类似于 GradleDependency 检查,检查 Android SDK 工具和库中可用的较新版本,但这适用于任何 MavenCentral 依赖项,并且每次都连接到库,这使其更灵活但也慢得多。
由于速度变慢,这可能会引入我建议定期手动运行它,而不是一直运行它。您可以通过以下方式做到这一点:
分析 > “按名称运行检查”
然后搜索“可用的较新库版本”,并在您的模块上运行它。
编辑:以上应该只适用于 Android Studio 2.3。如果您使用的是旧版本(您应该更新),以下可能会有所帮助:
请注意,您似乎必须启用检查才能手动运行它 - 因此(从 Android Studio 2.0 Beta 2 开始)您需要在设置中找到检查,启用它,然后按名称运行它,然后再次禁用它(恢复以前的性能)。
def okhttpVersion = '2.7.2'
compile "com.squareup.okhttp:okhttp:$okhttpVersion"
com.squareup.okhttp:okhttp:2.7.2
。同样在 2.0.0-beta4
除了 Android Studio 的内置功能之外,还有一个名为 Gradle Versions Plugin 的不错的 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
有关广泛的使用示例,请参阅 docs。
Configuration 'compile' in project ':myapp' is deprecated. Use 'implementation' instead. The CompileOptions.bootClasspath property has been deprecated and is scheduled to be removed in Gradle 5.0. Please use the CompileOptions.bootstrapClasspath property instead.
。
请参阅文件 > 项目结构,然后单击“建议”。我知道,这个解决方案是由 Hemant Sharma 和 Jeremías Gersicich 提出的,但 Android Studio 在 3.4.1 版本中对其进行了更改。
https://i.stack.imgur.com/UjC99.png
在大多数情况下它会有所帮助,但有时库会更改它们的 ID(路径)。所以你有时应该访问他们的网站,看看为什么这些库没有更新这么久。然后手动更新。
Gradle KTS
已弃用 - 查看接受的现代方式答案
我在下面介绍的工具不适用于新版本的 Android Studio/Gradle,并且其作者不再维护它 (as of 30/10/2016)。因此,应使用已接受答案中提出的解决方案,除非使用旧版本的 Android Studio。
截至 2016 年 1 月,有一个用于 Android Studio 的插件,称为 Dependencies Version Checker,其源代码可在 GitHub 上找到。
它可以通过内置界面添加(设置>插件>浏览存储库...):
https://i.stack.imgur.com/1GES4.png
安装并重新启动后,UI 中会出现以下选项卡:
https://i.stack.imgur.com/g0jnb.png
然后应将相关的 build.gradle
粘贴到 VersionChecker 面板的左侧,并按下 Version Check 按钮。结果是出现在右侧的表格,其中包括粘贴脚本中使用的库的最新版本(如上图所示)。
转到 Android Studio ->首选项->插件(适用于 Mac)和文件 ->设置->插件(适用于 Windows)并搜索“Check for Dependency updates plugin”。安装它并重新启动android studio。您将能够在右侧看到依赖项选项卡,该选项卡将显示任何依赖项是否有可用的新更新。
https://i.stack.imgur.com/TkDPD.png
对于支持库 (com.android.support) 依赖项,有一个更好的选择 - andle
它也可以查询 jcenter 和 maven center。
一次更新所有项目的简单三步。
1.安装:
$ sudo pip install andle
2.设置sdk:
$ andle setsdk -p <sdk_path>
3.更新依赖:
$ andle update -p <project_path> [--dryrun] [--remote] [--gradle]
--dryrun:只在控制台打印结果
--remote: 检查 jcenter 和 mavenCentral 中的版本
--gradle:检查 gradle 版本
有关详细信息,请参阅 https://github.com/Jintin/andle
我正在处理同样的问题并尝试了答案https://stackoverflow.com/a/35371234/6412430
在 Android Studio 3.4.1 上真正对我有用的是:
File -> Project Structure -> Dependencies
一旦达到这一点,您的项目或模块中包含的所有依赖项都将被列出。过时的将被强调,当您选择一个时,将显示它的详细信息,为您提供更新变量(如果您将其与声明分开)或依赖项的选项。
有点晚了,但这对我有用。
您可以使用 Gradle refreshVersions。它会生成一个 java 属性文件,告诉您哪些版本可用,并允许您更改 all 依赖项实例中的版本号。因此,仅当您需要更改依赖项的版本时才编辑此文件。
Java 属性文件versions.properties 类似于this。
要更新或推荐您的项目依赖项应与 android 项目相同
FILE -> Project Structure -> MODULES(app) -> Dependencies
当您到达依赖项选项卡时,单击位于窗口右上角的 +
按钮。当您点击 +
选择 Library Dependency
时,它将打开新窗口 Choose Library Dependency
在搜索框中搜索您的依赖项,所有列出的 Android 依赖项都会更新。
com.google.code.gson:gson:2.2.4
而实际上是 com.google.code.gson:gson:2.8.5
Project Structure
对话框的Dependencies
选项卡没有找到我的项目的任何依赖项。