如何检查pom.xml以获取更新的依赖项

时间:2010-08-18 20:46:16

标签: maven-2 dependency-management

我对Maven和pom.xml很新。有没有办法可以找出哪些依赖项已经过时,以便我可以更新我的pom.xml中的版本号。

在其他语言中,例如,Ruby有一个命令gem list outdated,它给我一个可以更新的依赖项列表(rubygems)

如果可以提供帮助,我正在使用IntelliJ Idea。

3 个答案:

答案 0 :(得分:79)

您可以使用Versions Maven Plugin执行此操作。检查以下目标:

以下是示例输出(摘自示例):

  

Checking for new dependency updates

     

display-dependency-updates目标将检查项目中使用的所有依赖项,并显示可用较新版本的依赖项列表。

     

以下是一些示例:

svn checkout http://svn.codehaus.org/mojo/trunk/mojo/build-helper-maven-plugin build-helper-maven-plugin
cd build-helper-maven-plugin
     

运行

mvn versions:display-dependency-updates
     

产生以下输出:

[INFO] ------------------------------------------------------------------------
[INFO] Building Build Helper Maven Plugin
[INFO]    task-segment: [versions:display-dependency-updates]
[INFO] ------------------------------------------------------------------------
[INFO] [versions:display-dependency-updates]
[INFO]
[INFO] The following dependency updates are available:
[INFO]   org.apache.maven:maven-artifact ........................ 2.0 -> 2.0.9
[INFO]   org.apache.maven:maven-plugin-api ...................... 2.0 -> 2.0.9
[INFO]   org.apache.maven:maven-project ....................... 2.0.2 -> 2.0.9
[INFO]   org.codehaus.plexus:plexus-utils ....................... 1.1 -> 1.5.6
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 17 seconds
[INFO] Finished at: Fri Aug 15 10:46:03 IST 2008
[INFO] Final Memory: 10M/167M
[INFO] ------------------------------------------------------------------------

Pom install

<plugin>
  <groupId>org.codehaus.mojo</groupId>
  <artifactId>versions-maven-plugin</artifactId>
  <version>2.5</version>
</plugin>

答案 1 :(得分:9)

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>

答案 2 :(得分:8)

如果您想快速完成,可以使用www.versioneye.com网站。

您可以在那里定义项目并上传项目pom.xml,该网站还会定期向您发送电子邮件,通知您有关新更新的信息。

您还可以提及要检查更新的库。

我不知道它是否自动与maven repo完全同步,但我总是发现它的lib版本是更新的。

更新:

6年后项目关闭:(

所以mvn versions:display-dependency-updates似乎是选择。