Apache Maven

Apache Maven

About TrustRadius Scoring
Score 8.6 out of 100
Apache Maven

Overview

Recent Reviews

Complex XML configuration

5 out of 10
January 17, 2018
It is very easy to understand. Being popular in the open source community, various open source projects can be built using Maven. We use …
Continue reading

Apache Maven

9 out of 10
December 28, 2017
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 …
Continue reading

Apache Maven Review

5 out of 10
June 17, 2016
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 …
Continue reading
Read all reviews

Reviewer Pros & Cons

View all pros & cons

Video Reviews

Leaving a video review helps other professionals like you evaluate products. Be the first one in your network to record a review of Apache Maven, and make your voice heard!

Pricing

View all pricing
N/A
Unavailable

What is Apache Maven?

Apache Maven is an open source build automation tool.

Entry-level set up fee?

  • No setup fee

Offerings

  • Free Trial
  • Free/Freemium Version
  • Premium Consulting / Integration Services

Would you like us to let the vendor know that you want pricing?

10 people want pricing too

Alternatives Pricing

What is Travis CI?

Travis CI is an open source continuous integration platform.

What is CircleCI?

CircleCI in San Francisco offers an eponymous build automation platform.

Product Demos

What Is Maven? | What Is Maven And How It Works? | Maven Tutorial For Beginners | Simplilearn
What Is Maven? | What Is Maven And How It Works? | Maven Tutorial For Beginners | Simplilearn
06:16

Features Scorecard

No scorecards have been submitted for this product yet..

Product Details

What is Apache Maven?

Apache Maven is an open source build automation tool.

Apache Maven Video

What is Apache Maven?

Apache Maven Technical Details

Operating SystemsUnspecified
Mobile ApplicationNo

Frequently Asked Questions

Apache Maven is an open source build automation tool.

Reviewers rate Support Rating highest, with a score of 5.3.

The most common users of Apache Maven are from Enterprises (1,001+ employees) and the Information Technology & Services industry.

Comparisons

View all alternatives

Reviews and Ratings

 (57)

Ratings

Reviews

(1-12 of 12)
Companies can't remove reviews or game the system. Here's why
Score 9 out of 10
Vetted Review
Verified User
Review Source
We are using Apache Maven to manage the overall project dependencies, we are having complex maven projects and the situation where there is too often updates in the version then Apache Maven helps us to fulfill or help us to manage the dependencies. It fulfills the need for documentation generation as well.
  • Easy to use
  • Best dependencies management
  • Automatic project build
  • Little complex installation
  • Documentation can be better
  • Tough for the freshers
Overall experience or feedback on Apache Maven is positive, we are able to manage the project dependencies where there are a lot more changes so frequently and where ever there is a need for document generation then in that case Apace Maven is the best-suited one. Project build is also good, it takes less time.
Sharang Dwivedi | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
Review Source
Apache Maven is used as a build automation tool and it simplifies the projects build process, dependency, and documentation. Apache Maven is able to solve many problems as below:
1. Software versioning.
2. Dependency management like includes the jars and other dependencies.
3. It has been integrated with the git and Jenkins CICD pipeline for the automatic build.
  • Software versioning
  • CICD integration
  • Dependency management
  • How to use tutorials for beginners, learning curve should be easy
  • Sometime understanding the POM is diffecult
  • Only works with java
We are using the java langauge to develop our application hence Apache Maven is one of the best suitable build tools available. Our use case has been Project and dependency management. Building the jar files Software versioning. Useful in maintaining consistency in the project.
Score 8 out of 10
Vetted Review
Verified User
Review Source
Apache Maven is being used throughout the entire enterprise organization. It's our go-to system to perform builds for our applications. Apache Maven makes it easy for us to have a uniform build system for multiple different departments. It standardizes the build process to ensure the quality of our build process. This allows the developers to focus on the actual code, not the build process itself.
  • Makes the build process simple and easy to do.
  • It provides a standard build system that can be adopted by multiple, different groups within an organization.
  • It's extensible with easy to use custom extensions which our developers take full advantage of.
  • The documentation could be a bit more detailed.
  • Initial setup for us in our environment was a bit of challenge.
  • The learning curve for this product is pretty steep. Your developers will definitely need some sort of training to get started and integrating it.
Apache Maven is well suited for an environment where you want an easy to use system that can be rolled out to multiple departments throughout the enterprise. Apache Maven is a good solution for those looking for a build process that can be customized as much as they require. This system will allow a consistent build process, but still be flexible enough for individual departments to customize a solution to meet their specific needs.
The overall support for Apache Maven is good, however, it being an open-source project, there isn't much of a go-to company we could get our questions answered. However, we understood that by going with an opne-source project, the support would probably not be as detailed as another product supported by an actual, company, but we were happy for the trade-offs presented by this product.
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.
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.
heather collins | TrustRadius Reviewer
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.
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.
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.
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.
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.
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.
June 10, 2016

Maven review

Ken O'Connell | TrustRadius Reviewer
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.