Apache Maven Reviews

46 Ratings
<a href='https://www.trustradius.com/static/about-trustradius-scoring' target='_blank' rel='nofollow noopener noreferrer'>trScore algorithm: Learn more.</a>
Score 8.5 out of 100

Do you work for this company? Manage this listing

Overall Rating

Reviewer's Company Size

Last Updated

By Topic




Job Type


Reviews (1-10 of 10)

Anonymous | TrustRadius Reviewer
February 25, 2020

Apache Maven: What, are you pushing your libs to your git repo?

Score 10 out of 10
Vetted Review
Verified User
Review Source
It is being used across the whole organization as the dependency management solution for all Java Enterprise products. It is used in both standard Java maven projects (using pom.xml) and gradle-based projects. We use a mix of publicly-available dependency downloads (such as mvnrepository.com), as well as local nexus servers. One downside in such a mixed-repo environment would be switching between profiles (in local settings) between projects. Some projects involve a local nexus server of "approved" libraries, whereas others allow any publicly-available repo. Switching between the two can involve IDE restarts and other minor annoyances in developer workflow.
  • Better project build and task automation than ant or any other conventional Java build configuration manager.
  • Easy dependency management for all popular java libraries, with the ability to support arbitrary dependency repositories (Nexus, e.g).
  • Better IDE integration. Still too many manual workflows in Eclipse and IntelliJ.
  • Similar to above, easier project-specific configuration management. I'm not aware of an ability to control which repositories are used by which projects, without updating the main maven config.
If you're building a Java Enterprise application, you should use Maven. I'm not actually sure what the alternative is. Manually downloading Jar's and adding them to your classpath? Putting them in your source control repo? Hand-rolling everything you need, including String manipulation functions? This is really the only modern solution to Java library dependency management, and whether you use pom.xml, or build.gradle or some other abstraction, this is the de-facto standard for Java dependency management.
I can't speak to the support, as I've never had issues. Apache Maven "just works," and errors were user errors or local nexus errors. Apache Maven is a great build/dependency management tool. I give it a 9/10 because occasionally the error message don't immediately indicate a solution...but again, those errors were always user or configuration errors, and the Maven documentation is extensive, so I don't find fault in Maven, but in its users.
Read this authenticated review
Anonymous | TrustRadius Reviewer
January 21, 2020

Build automation for those who like XML

Score 7 out of 10
Vetted Review
Verified User
Review Source
Maven is used across the org to build JVM based applications as well as few non-JVM ones which utilize the exec and release plugins to adhere to semantic version requirements. It is mainly used to solve build dependencies between internal and external applications.
  • Build resolution.
  • Sometimes useful error messages.
  • Lots of static XML.
  • Copypasta.
Builds JVM applications very well. Wouldn't recommend for other types of applications. Many useful plugins make sure applications build and run correctly, at the expense of overly verbose XML.
Most of the support I've gotten is from coworkers. I'm sure there's a community out there who would know more, but I'm not aware of it.
Read this authenticated review
Hung Vu | TrustRadius Reviewer
May 02, 2019

Excellent tool for project lifecycle management

Score 9 out of 10
Vetted Review
Verified User
Review Source
We use Maven as the primary build tool for all of our Java projects. It allows us to manage all project dependencies, their versions, repository source, build, and deployment stage, It is easy to use and flexible, we just need to define our main dependency and it will pull out all necessary libraries and help to resolve conflict. With Maven, it is easy to manage our source code in a repository tool such as BitBucket and store all libraries in our Repository which we can share between all projects, so we do not need to replicate libraries in all source code repositories. Maven has a rich plugin which provides a various goal for the specific purpose based on project need such as report, log, version.
  • Easy to install with GUI or command line, well integrated with almost IDE.
  • Centralized locaiton for project configuration lifecycle managment.
  • Has a rich plugin which supports various goals.
  • Separate between source code and dependency in the project.
  • Flexible on the configurations repository, built a parameter, goal so we could have a different solution for the different environment or stages such as dev, test or production.
  • Good open source community and documentation.
  • POM file in XML is quite messy, especially with a big project.
  • Dependency management with a local cache sometimes causes conflict.
  • Do not support scripting to add custom build commands.
Maven is suitable with almost Java projects to obtain flexibility on building the application quickly. That makes it easier for the developer to manage project lifecycle and decouple between source code and its dependency. However, Maven requires a repository server to store an internal repository. Also, if you rely on a published repository such as https://mvnrepository.com/, sometimes it causes a problem when building. Also, if you need to specify a build command you need to look to another tool such as Gradle or Ant.
Read Hung Vu's full review
heather collins | TrustRadius Reviewer
January 22, 2018

Apache Maven, Complete Review

Score 6 out of 10
Vetted Review
Verified User
Review Source
At ARM marketing firm when we started working on our in-house custom-built applications and delivering web solutions to our clients, we decided to go with Java based web applications since our developers had the most experience in that domain. Apache Maven is an Open Source tool from the Apache Software Foundation that we use for building and packaging our applications.
  • Apache Maven uses a simple hierarchical structure for building and packing a software artifact.
  • Different configurations of the software can be used while working on the dev server as opposed to a live production environment. This makes testing the application very easy.
  • One of the issues with building software using Apache Maven is that its cache resolution is not optimal. It pulls down all the artifacts onto the developer's local machine and can sometimes result in conflicts.
  • The build process can vary in time and gets progressively longer as the project's complexity increases.
In software development one of the major headaches for companies is managing third party libraries and dependencies. Apache Maven makes it a breeze on that front. We can lock in the specific versions of the libraries that we are currently using and can upgrade them at our own convenience.
Read heather collins's full review
Ken O'Connell | TrustRadius Reviewer
June 10, 2016

Maven review

Score 9 out of 10
Vetted Review
Verified User
Review Source
Apache Mave is used by the whole organization to build an entire code suite (not at Cognex).
  • Good build structure and open source community
  • Excellent management of build artifacts (GAV)
  • Integrates well with other tools
  • Better support channels
Apache Maven is better for JAVA shops, or those willing to switch their Ant builds to Maven.
Read Ken O'Connell's full review
Anonymous | TrustRadius Reviewer
January 16, 2018

Great Build and Management Tool

Score 7 out of 10
Vetted Review
Verified User
Review Source
At our university, we decided to purchase a new portal implementation to serve as the landing page for our students, faculty and staff members. We decided to go with a Liferay portal for that purpose. For building and packaging our applications we decided to use Open Source software Apache Maven. Maven is used throughout our development environment as the main packaging tool.
  • If you are building in the Java ecosystem, then Maven definitely has the biggest repository of artifacts needed for such projects.
  • It has a very simple to use extendable architecture. Everything is configurable through the Pom.xml file which is very simple to follow.
  • In our use of this software, we have found several issues with its dependency management system. Firstly due to its caching mechanism, it can sometimes show conflicts when building the project locally.
  • Adding and configuring the project to support manually added JAR files can be problematic. The error handling and reporting mechanism should be improved.
Building and automating packaging of software can be a challenging task. As the complexity of the project grows so do the dependencies on third-party artifacts. Using Maven we can define and manage the project structure centrally and it helps improve overall build times.
Read this authenticated review
Anonymous | TrustRadius Reviewer
December 28, 2017

Apache Maven

Score 9 out of 10
Vetted Review
Verified User
Review Source
Apache Maven is used as a build tool in our organization. Maven along with Gradle are the 2 most used tools for building Java or Scala applications.
  • Maven is useful in building Java applications.
  • Quick project setup, no complicated build.xml files, just a POM and go. Reduces the size of source distributions, because jars can be pulled from a central location.
  • Maven provides a very rigid model that makes customization tedious and sometimes impossible. While this can make it easier to understand any given Maven build, as long as you don’t have any special requirements, it also makes it unsuitable for many automation problems.
  • Maven has few, built-in dependency scopes, which forces awkward module architectures in common scenarios like using test fixtures or code generation. There is no separation between unit and integration tests
  • By making it simple to manage multiple projects it promotes modular design of code.
  • It is easy to use modular code, but when the code is in separate compiling projects it is impossible to cross references between modules of code. Maven helps by enforcing modular design of code.
  • Dependency Management is very simple and clear.
Read this authenticated review
Anonymous | TrustRadius Reviewer
January 17, 2018

Complex XML configuration

Score 5 out of 10
Vetted Review
Verified User
Review Source
It is very easy to understand. Being popular in the open source community, various open source projects can be built using Maven. We use Maven for developing in-house projects. All Java IDEs provide support for Maven and it's compatible with any Java IDE. Using Maven, one can reuse code and resources.
  • Reuse code and resources
  • Compatible with a wide range of Java IDEs
  • It helps to download resources over the network.
  • Configuration is written into XML which is cumbersome.
  • New versions of libraries are added daily, It is very difficult for Maven to keep track of the dependancies.
  • It's inflexible and overcomplicated.
For small projects, Maven can identify unused and transitive dependencies. For large projects, as it contains a large number of XML files which makes it difficult to understand and maintain. Maven makes your project build on a network connection. Not enough documentation on the web for beginners. Debugging is not easy as it is difficult to find bugs in your code.
Read this authenticated review
Anonymous | TrustRadius Reviewer
March 17, 2017

Apache Maven - a good project management and testing tool

Score 8 out of 10
Vetted Review
Verified User
Review Source
I set up a set of automation test projects with Apache Maven. It managed several testing projects with different levels. I also integrated it with Jenkins. It helps with continuous integration.
  • It's easy to manage the libraries. Just need to update the pom file, you can easily manage and update libraries in one place.
  • Good to manage different modules.
  • Integrates with Jenkins. Compatible with other open source tools and continuous integration.
  • Sometimes it kept the old report, and caused the maven build [to] fail.
  • More improvements needed to manage different levels of pom.
[It's well suited] when you need to manage a project with different modules. It will have good management with different modules, projects, and its sub-projects. It's also well suited when you need to manage projects which have a large number libs that you need to manage. Also Maven project is supported in Jenkins and CI tools. Can be good to apply for a CI project. Also good for automation testing projects, for example: testNG+Maven good for UI/API test. Can not think a scenario that is less appropriate. Maybe a more complex project might be less appropriate, since the projects I am working on is not very big.
Read this authenticated review
Anonymous | TrustRadius Reviewer
June 17, 2016

Apache Maven Review

Score 5 out of 10
Vetted Review
Verified User
Review Source
Maven is often used in our Tech Dev department in a variety of Java projects to help speed up the process of dependency configurations and project packaging.
  • Facilitates build processes: through the use of POM files and plugins, this feature helps developers focus less on the tedious mechanical details of project implementation.
  • Well organized: users are able to locate their project information easily, whether it's dependencies, test reports, etc.
  • Catalyzes process for making updates and migrations: minimal time is needed for users to make changes to their project based on new installations, etc.
  • Compilation errors can be a bit extensive
  • Difficulty in maintaining jars in repository for large projects
  • Certain Maven conventions are set in stone, causing inflexibility (one artifact per project, etc.)
Maven most likely works best for a single application, rather than a large scale project that requires development that is widely distributed or is heavily dependent on other projects. It may also be less appropriate for those who need their application to be integrated quickly. There is a steep learning curve for Maven: command line, IDE, build phases, packaging types, etc. For certain teams of developers, Maven is great as it provides proper structure and conventions to make everyone be on the same page.
Read this authenticated review

About Apache Maven

Apache Maven is an open source build automation tool.
Categories:  Build Automation

Apache Maven Technical Details

Operating Systems: Unspecified
Mobile Application:No