Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6141241
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 23, 20262026-05-23T18:13:24+00:00 2026-05-23T18:13:24+00:00

Are there tools that will profile the Maven build process itself so that I

  • 0

Are there tools that will profile the Maven build process itself so that I can see where the build is spending most time?

We’re having issues at work with respect to Maven 3.0.3 and 3.0b1. Our project builds much faster under 3.0b1 (3m30s) compared to 3.0.3 (9m00s). With 3.0b1 the build is approximately 63% faster (if my math is right).

I tried searching for performance comparisons and performance issues regarding Maven 3, but was unable to find anything.

UPDATE

I did some more research by looking at the maven sources and this is what I found out:

While using jconsole, I saw that most of the time (in 3.0.3) is spent inside DefaultProjectDependenciesResolver.java. So I downloaded the source to both 3.0b1 and 3.0.3 to see what’s happening. I noticed that in 3.0.3 there are two versions of the class. One is in org.apache.maven.project, while the other is in org.apache.maven. It also appears that in 3.0.3, the former is being used. While stepping through the code, I saw that bulk of the time is spent when it reaches this statement:

node = repoSystem.collectDependencies( session, collect ).getRoot();

In 3.0b1, the code does:

ArtifactResolutionResult result = repositorySystem.resolve( request );

I also noticed that respositorySystem is of the type RepositorySystem, and the concrete implementation is LegacyRepositorySystem. I’m assuming that this was being used while the Maven 3 was in beta until the new implementation was created? Going back to 3.0.3, the collectDependencies method lives in DefaultRepositorySystem.java which is part of org.sonatype.aether.impl.internal. This eventually calls collectDependencies inside DefaultDependencyCollector.java which is also part of org.sonatype.aether.impl.internal. I’m assuming that this is how the dependency graph is built.

I’m now wondering it is because of how our dependencies are structured. Has anyone seen this kind of behavior before?

UPDATE

There is an issue in JIRA about this issue along with a suggested fix. I’ve posted the details as an answer.

UPDATE

The problem is due to the version of aether that’s used in maven 3.0.3 (1.11). Version 1.12 of aether fixes this problem. I checked out the source to maven 3.0.3 and edited the POM to change the version of aether from 1.11 to 1.12. I then built maven from source and replaced my current version with the version I built. The reduction in build-times is dramatic.

If you don’t want to build maven from source, you can replace the aether libraries that are in maven’s lib directory with 1.12 version. That should work as well.

I’m not sure if this change is going to make it into 3.0.4, because the maven developers said that there are licensing changes going from aether 1.11 to aether 1.12, and so they’re still discussing it.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-23T18:13:25+00:00Added an answer on May 23, 2026 at 6:13 pm

    Maven is just a plain Java application, so I suggest that you start it with a profiling tool such as YourKit or JProfiler and analyse its runtime performance. You can also use JVisualVM to extract runtime performance information.


    All in all, I believe the Maven developers would be interested to find out about this performance regression. Please open a ticket in the Maven Jira or post on the Maven developers list

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I know there are tools out there that will let you see the content
Is there any good asset build tools that will give me the same benefits
Are there any tools that will spider an asp.net website and create a static
Are there any tools available that will calculate code metrics (for example number of
Are there any automated tools that will parse through XAML code and clean out
Are there any tools available that will let me rebase in git style an
Are there tools available that will simulate going to a web site, clicking links,
Are there any tools that will expand object oriented code so there is no
Are there any tools available that will index a CVS repository? Basically what I
Are there any libraries or tools that will help me draw something complex and

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.