Open Source Build Systems in Java
23 projectsApache Maven is a build tool for Java projects. Using a project object model (POM), it manages compilation, testing, packaging, and documentation. It provides dependency management, a large plugin ecosystem, and integration with the Central Repository.
Jar Jar Links repackages Java libraries and embeds them into your distribution so you can ship a single JAR with no external dependencies and avoid version conflicts. It provides an Ant task (extends the jar task), Gradle support, and a command-line tool; rules use wildcards to rename packages and bytecode is transformed via ASM. Maintained fork of the ori...
Apache Ant is a Java library and command-line tool that drives build processes described in XML as targets and extension points. It is commonly used to compile, test, and run Java applications and can be combined with Apache Ivy for dependency management. Actively maintained by the Apache Software Foundation.
APB is a project build system that takes ideas from Ant and Maven but uses Java for project definition instead of XML. It provides default layouts, model-based builds, dependency management, full lifecycle (compile, package, test), coverage support, documentation generation, IDE project file generation (IntelliJ), and Ant tasks for integration. Build and r...
CruiseControl is a continuous integration framework and toolkit with plugins for Ant, Maven, NAnt, Phing, Rake, Xcode, and exec-based builds. It supports multiple source controls and notification schemes (email, IM) and provides a web interface for build history. BSD-licensed; maintained by volunteers.
JMK is a Java-based make utility for writing platform-independent makefiles. File names and path lists are written in a canonical form and translated by JMK into native form, so the same makefile can be used across different machines and operating systems. Distributed as an executable JAR from SourceForge.
Schmant is a scriptable build tool for software artifacts. Build scripts can be written in Groovy, JavaScript, JRuby, or Jython and use tasks for compiling Java, building JARs, Subversion export, and text substitution. It supports parallel task execution, Ant task integration, task packages, and Eclipse and Hudson plugins.
Ant Hill is an Ant library for remote invocation of build targets over XMPP (Jabber). It provides client/server remote target invocation for coordinating builds across clusters, extensible remote commands, and error reporting via remote exception propagation. The project was hosted on Google Code and is no longer actively maintained.
Antmod is an Ant-based build, release, and repository management tool with integrated CVS and Subversion support. It standardizes build files, tagging, and branching across projects and provides plugins for Java and non-Java projects. The project is no longer in active development.
Apache Continuum was a continuous integration and build server with automated builds, release management, and role-based security. It supported Maven 1 and 2, Ant, and shell scripts. The project was retired in May 2016 and is maintained in the Apache Attic; last release was 1.
JAM (JavaGen Ant Modules) is a collection of Ant scripts for common Java/J2EE build tasks: compilation, packaging, testing, deployment, and application server control. It combines Maven-style project description and repository features with Ant, and supports XDoclet, JUnit, Cactus, and various J2EE servers.
LuntBuild is a build automation and management tool with a web-based interface for scheduling and running builds. It supports multiple VCSs, Ant and Maven builds, flexible scheduling, build dependencies, and role-based access. Build artifacts and logs are published for the team.
Proximity (px-core) is a fetch-and-cache engine with Maven bindings (px-core-maven) that implements a Maven repository proxy. It caches and aggregates remote Maven repositories into a single logical repository and can publish in-house or external artifacts. It runs as a Java web application for intranet use.