Java 8 and Later in Its Pure Form
We use Java 8 for development, but we can deliver the kernel and plugins in all newer Java versions.
An email or a request in the forum is sufficient.
Reflection
We use Java in its simple form, i.e. we do not use reflection for performance reasons.
Third-party libraries
We use practically no third-party libraries in the kernel. This allows us to avoid dependencies on other developers. In most cases, we only used small parts of the libraries used anyway. In the end, we decided not to use them at all.
Only the annotation library from JetBrains and the SimpleJson library from Google are used. Together, these small libraries come to approx. 40 KBytes.
However, plugins can use other libraries. For example, the session manager uses the H2 database and the record generator uses the XOM XML library. This is unproblematic in this respect, as plugins are not integrated into other programs.
Logging
We use a self-written variant of logging. It is based on TinyLog, but does not use any code from this library. LogWriters can easily be written, which pass the LogRecords on to other logging systems.
Log records can also simply be sent to other nodes and collected there.