Native language integration with Java VM has never been easier!
import jnim
# Import a couple of classes
jclass java.io.PrintStream of JVMObject:
proc println(s: string)
jclass java.lang.System of JVMObject:
proc `out`: PrintStream {.prop, final, `static`.}
# Initialize JVM
initJNI()
# Call!
System.`out`.println("This string is printed with System.out.println!")
The list of the main features:
- API splitted in two parts: low and high level.
- It supports Java inheritance and generics.
The documentation is coming soon. Now you can look the examples in the tests directory. For example, tests/test_java_lang.nim and tests/test_java_util.nim shows how to use high level API.
If you want to run the tests, use nim test
command.
nimble install jnim
- The current version of the library is a complete rewrite done by @vegansk.
- Also thanks a lot to all the contributors