Jesper Rønn-Jensen
Jesper Rønn-Jensen

Reputation: 111576

How to check pom.xml for updated dependencies

I am fairly new to Maven and pom.xml. Is there a way I can find out which of my dependencies that are outdated, so that I can update version numbers in my pom.xml.

In other languages, for instance, Ruby has the command gem list outdated that gives me a list of dependencies (rubygems) I can update

I am using IntelliJ Idea if that can help.

Upvotes: 68

Views: 35841

Answers (5)

Daud Malik
Daud Malik

Reputation: 71

I know this is an old post, but I wanted to add a helpful answer. For dependency monitoring, we're using Vulert. It continuously tracks open-source dependencies for new vulnerabilities and suggests fixes, all without requiring installation or codebase access. It simply uses a manifest file (e.g., pom.xml) and supports all programming languages. Hope this helps!

Upvotes: 0

mwalter
mwalter

Reputation: 1003

There's a free plugin for the IntelliJ IDE which checks for new versions of your dependencies defined in the pom.xml: Maven Dependency Checker.

Upvotes: 0

Alireza Fattahi
Alireza Fattahi

Reputation: 45465

If you want to do it fast you can use www.versioneye.com site.

There you can define your project and upload project pom.xml, the site will also send you regular emails which notify you about new updates.

You can also mention which libraries do you want to check for update.

I don't know if it automatically fully sync with maven repo or not, but I always find its lib versions are update.

Update:

After 6 years the project switched off :(

So the mvn versions:display-dependency-updates seems to be the choice.

Upvotes: 10

Pascal Thivent
Pascal Thivent

Reputation: 570285

You can do this with the Versions Maven Plugin. Check the following goals:

Here is a sample output (taken from the examples):

Checking for new dependency updates

The display-dependency-updates goal will check all the dependencies used in your project and display a list of those dependencies with newer versions available.

Here are some examples of what this looks like:

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

Run

mvn versions:display-dependency-updates

Which produces the following output:

[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>

Upvotes: 114

8bitjunkie
8bitjunkie

Reputation: 13245

It isn't obvious what the POM dependency is for this.

For your convenience:

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

and the Repository:

<repository>
    <id>Codehaus Mojo</id>
    <name>Codehaus Mojo</name>
    <url>https://nexus.codehaus.org/content/repositories/releases/</url>
</repository>

Upvotes: 9

Related Questions