Apache Maven vs. GNU Make

Overview
ProductRatingMost Used ByProduct SummaryStarting Price
Apache Maven
Score 9.9 out of 10
N/A
Apache Maven is an open source build automation tool.N/A
GNU Make
Score 7.7 out of 10
N/A
GNU Make is an open source and free build automation tool.N/A
Pricing
Apache MavenGNU Make
Editions & Modules
No answers on this topic
No answers on this topic
Offerings
Pricing Offerings
Apache MavenGNU Make
Free Trial
NoNo
Free/Freemium Version
NoNo
Premium Consulting/Integration Services
NoNo
Entry-level Setup FeeNo setup feeNo setup fee
Additional Details
More Pricing Information
Community Pulse
Apache MavenGNU Make
Best Alternatives
Apache MavenGNU Make
Small Businesses
GitLab
GitLab
Score 8.7 out of 10
GitLab
GitLab
Score 8.7 out of 10
Medium-sized Companies
GitLab
GitLab
Score 8.7 out of 10
GitLab
GitLab
Score 8.7 out of 10
Enterprises
GitLab
GitLab
Score 8.7 out of 10
GitLab
GitLab
Score 8.7 out of 10
All AlternativesView all alternativesView all alternatives
User Ratings
Apache MavenGNU Make
Likelihood to Recommend
9.0
(0 ratings)
7.1
(0 ratings)
Usability
8.0
(0 ratings)
-
(0 ratings)
Support Rating
5.1
(0 ratings)
7.1
(0 ratings)
User Testimonials
Apache MavenGNU Make
Likelihood to Recommend
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 full review
Makefiles are machine-readable documentation that make your workflow reproducible. If the build process is a very continuous flow of operations within scope, it will do it well and also act as a documentation of all the dependence. For some long-term projects, Make has been used extensively and being maintained to do the job.
Read full review
Pros
  • 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.
Read full review
  • Performance and accuracy of cross-module dependencies.
  • Simple to write and easy to understand.
Read full review
Cons
  • 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.
Read full review
  • No dependency management tools (but there are no cross-platform tools of this type anyway)
  • Tedious to do cross-compilation (Debug & Release builds, 32- and 64-bit builds, x86/ARM builds)
Read full review
Usability
The overall usability of Apache Maven is very good to us. We were able to incorporate it into our company's build process pretty quickly. We deployed it to multiple teams throughout the entire enterprise. We got good feedback from our developers stating that Apache Maven has simplified their build process. It also allowed to to standardize the build process for the entire enterprise, thus ensure that each development team is using the same, consistent process to build code.
Read full review
No answers on this topic
Support Rating
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 full review
In general, it is fair to say the support is sufficient although we do not deal with support directly. There are a lot of forum people chiming in with suggestions or recommendations of particular usage or issues we run into. Since it is open software, patch and fixes will be available from time to time. A lot of information is available in the web now for knowing GNU Make from learning, example, teaching, etc.
Read full review
Alternatives Considered
Ant is useful if your build is heavily based on customs scripts running in the right order. Maven greatly simplifies the process to keep track of and download build dependencies compared with Apache Ant. If your build is based on multiple custom scripts running in a specific order there is a lot of overhead in Maven compared to Apache Ant.
Read full review
I'm a full-stack developer that has used various build tools, including Maven, Gradle, and NPM/yarn. For our C projects, I also investigated CMake and Ninja, but they seemed more difficult to learn and more tedious to work with. GNU Make is a single binary that can be easily downloaded, even for Windows under MingW32, is straightforward to learn, and works pretty well despite its age.
Read full review
Return on Investment
  • Maven has been the only tool for building Java apps for a long time. And it being open source has helped maximize ROI.
  • I can't think of any negative. With Gradle coming up as a newer and better technology for building, some teams are shifting towards it.
Read full review
  • Easier to onboard new developers
  • Straightforward integration with CI/CD systems
Read full review
ScreenShots