Jeka bundles an automation engine core and features around for dealing with Java compile/tests/packaging, dependency management, Maven pom/bom/repo, Intellij/Eclipse, Git ...
No need for XML or fragile scripting. Use IDE full force to code, launch and debug your automation tasks written in Java.
Fast learning curve, transparency and simple concepts make Jeka easy to discover and troubleshoot with.
Jeka is designed on a plugin architecture. Writing plugins for Jeka is much easier and less verbose than with other similar tools.
Tutorial, reference guide and examples are available and maintained in sync with Jeka evolution. Also Jeka provides rich command line help based on class introspection.
Apache 2.0 License.
What is Jeka ?
Jeka (formerly Jerkar) is a Java build tool ala Gradle, Ant/Ivy or Maven. It differs by requiring pure Java code instead of XML files or dynamic language scripts to describe builds.
- Execute Java source indifferently from command line or IDE
- Powerful plugin mechanism and templating capabilities
- Balance cursor between highly flexible and highly standardized build definitions
- Multi-project support
- Multi-level configuration to fit in enterprise environment
Jeka can also be used as a standalone Java library for those who just want to reuse its features within their own product/code.
- Toolbox for file and I/O manipulation, logging, PGP signing, external tool launcher, ...
- Toolbox for Java compilation, resources processing, test execution/reporting, jar/war packaging
- Powerful dependency management fully compliant with Maven and Ivy
Take a look at screenshots
This is how Jeka takes place in your IDE. Java source code under jeka/def is invokable from your IDE or directly from command line.
Typical build class using Java and Springboot plugins together. Command line
jeka java#clean java#pack does exactly the same as executing
main method in IDE.
Ant style build class. Tasks are implemented explicitly. Each public method is direclty invokable from command line as jeka compile junit
Console output for a Springboot project build.
Start - Learn - Get Involved
Move to the following places to get started.
- Setup environment
- Write commands
- Write plugins
- Build Java projects
- Jeka internal behavior
- API discovering
- Detailed tool mechanisms
- News knight-color-logo.svg
- More Documentation and material