Under The Hood¶
Jeka consists of a single zero-dependency JAR file, along with two shell scripts (one Powershell script for Windows and one Bash script for Linux/macOS).
Inside the Jeka JAR¶
The Jeka JAR is structured as follows:
-
dev.jeka.core.tool
package:Contains classes for running Java externally, including the
dev.jeka.core.tool.Main
class and the component model. -
dev.jeka.core.tool.builtin
package:Contains KBeans bundled with JeKa, as
ProjectKBean
,DockerKBean
orNativeKBean
. -
dev.jeka.core.api
package:
Includes libraries for building projects. These classes can be easily used outside Jeka and embedded in your product.
graph TD
subgraph dev.jeka.core
subgraph tool
engine[dev.jeka.core.tool]
builtin[dev.jeka.core.tool.builtin]
end
subgraph api
project[dev.jeka.core.api.project]
java[dev.jeka.core.api.java]
system[dev.jeka.core.api.system]
dep[dev.jeka.core.api.depmanagement]
file[dev.jeka.core.api.file]
utils[def.jeka.core.api.utils]
misc[...]
end
end
engine --> java
engine --> system
engine --> dep
builtin --> engine
builtin --> api
java --> utils
dep --> utils
file --> utils
system --> utils