我对 Maven 和 pom.xml 相当陌生。有没有办法可以找出我的哪些依赖项已过时,以便我可以更新我的 pom.xml 中的版本号。
例如,在其他语言中,Ruby 有一个命令gem list outdated
,它给我一个可以更新的依赖项列表(rubygems)
如果有帮助,我正在使用 IntelliJ Idea。
我对 Maven 和 pom.xml 相当陌生。有没有办法可以找出我的哪些依赖项已过时,以便我可以更新我的 pom.xml 中的版本号。
例如,在其他语言中,Ruby 有一个命令gem list outdated
,它给我一个可以更新的依赖项列表(rubygems)
如果有帮助,我正在使用 IntelliJ Idea。
您可以使用版本 Maven 插件来做到这一点。检查以下目标:
versions:display-dependency-updates
扫描项目的依赖关系并生成具有更新版本可用的依赖关系的报告。versions:display-plugin-updates
扫描项目的插件并生成那些有较新版本可用插件的报告。这是一个示例输出(取自示例):
检查新的依赖项更新
目标将检查项目中使用的
display-dependency-updates
所有依赖项,并显示这些依赖项的列表以及可用的较新版本。以下是一些示例:
svn 结帐 http://svn.codehaus.org/mojo/trunk/mojo/build-helper-maven-plugin build-helper-maven-plugin cd build-helper-maven-plugin跑
mvn 版本:显示依赖更新产生以下输出:
[信息] --------------------------------------------- ------------------------- [INFO] 构建构建助手 Maven 插件 [INFO] 任务段:[versions:display-dependency-updates] [信息] --------------------------------------------- ------------------------- [信息] [版本:显示依赖更新] [信息] [INFO] 以下依赖项更新可用: [信息] org.apache.maven:maven-artifact ...................... 2.0 -> 2.0.9 [信息] org.apache.maven:maven-plugin-api ...................... 2.0 -> 2.0.9 [信息] org.apache.maven:maven-project ..................... 2.0.2 -> 2.0.9 [信息] org.codehaus.plexus:plexus-utils ...................... 1.1 -> 1.5.6 [信息] [信息] --------------------------------------------- ------------------------- [信息] 构建成功 [信息] --------------------------------------------- ------------------------- [INFO] 总时间:17 秒 [INFO] 完成于:2008 年 8 月 15 日星期五 10:46:03 IST [INFO] 最终内存:10M/167M [信息] --------------------------------------------- -------------------------
Pom 安装
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
<version>2.5</version>
</plugin>
如果您想快速完成,可以使用www.versioneye.com站点。
在那里您可以定义您的项目并上传项目pom.xml
,该站点还将定期向您发送电子邮件,通知您有关新的更新。
您还可以提及要检查更新的库。
我不知道它是否会自动与 maven repo 完全同步,但我总是发现它的 lib 版本是更新的。
更新:
6年后,该项目关闭了:(
所以mvn versions:display-dependency-updates
似乎是选择。
对此 POM 依赖项是什么并不明显。
为了您的方便:
<dependency>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
<version>2.1</version>
</dependency>
和存储库:
<repository>
<id>Codehaus Mojo</id>
<name>Codehaus Mojo</name>
<url>https://nexus.codehaus.org/content/repositories/releases/</url>
</repository>