Jeka bundles an automation engine core with 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, run 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.
Why A Java Native Build Tool ?
Jeka is a full featured Java build tool ala Gradle, Ant/Ivy or Maven but it is using plain Java to describe builds/tasks. This leads in a simpler and more powerful tool.
- Execute and debug Java code indifferently from command line or IDE
- Code directly against the Java build model instead of an intermediate XML/script/DSL
- Use seamlessly any 3rd party Java library inside your builds
- Use Power of Java language to design build templates and reusable automation components
- Get build classes as clean and maintainable as your production code
- Discover and troubleshot by navigating directly from your build code to the Jeka model/engine
- Document your builds and plugins by simply using @annotations inside your code
- Use a single language to develop, build, deliver applications and provision cloud infrastructure
Rich Features Out-Of-The-Box
Jeka comes natively with rich features for building and publishing all sort of Java projects .
- Powerful dependency management fully compliant with Maven and Ivy
- Multi-project support
- Multi-level configuration to fit in enterprise environment
- 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
- Integrated with intelliJ and Eclipse
- Jeka can also be used as a regular Java library with zero dependency
How does it look like ?
This is how Jeka takes place in your IDE. Every Jeka related files are located under jeka directory
Build classes are regular classes located in a specific folder. All their public methods can be directly invoked both from IDE and command line
One can launch methods from both IDE and command line as :
jekaw cleanPack deploy -host=my.server -springboot#springbootVersion=2.2.4.RELEASE
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
- More Documentation and material