jvmtp is a commercial product, licensed perpetually. You
buy a specific release, that build is yours to use forever. A perpetual
license includes one year of free updates — every jvmtp
release published within a year of your purchase is yours at no extra cost.
After that first year, further updates come at a reduced price, and the
build you already own keeps working. There is no subscription, no recurring
fee, and no license server. Every license produces JNI libraries for all
supported target platforms. Your purchase is governed by our
Terms of Purchase.
How licensing works
Perpetual license
Per release one-time
Purchase the current jvmtp build. It is yours to
keep and run forever, on as many builds of your own software as you
like.
The jvmtp build for the release you purchased: a single executable JAR (java -jar jvmtp.jar input.jar config.conf) that transpiles your JARs and produces native JNI libraries for every supported platform. That build is yours to keep and use forever.
No. The output is a normal JAR whose selected methods are backed by a standard JNI shared library. The injected NativeLoader extracts and binds the matching library at startup, so the only requirement on the target is a JNI-compliant JVM. There is no jvmtp runtime to install.
A perpetual license includes one year of free updates: every jvmtp release published within a year of your purchase is yours at no extra cost. After that first year, further updates are available at a reduced price relative to a fresh purchase. Buying an update is always optional, and the build you already own keeps working regardless.
Yes. Reach out for an evaluation sample (including sample transpiled output) before committing, and ask about dedicated education, academic, and research licensing.
jvmtp is a transpiler, not an obfuscator. It moves selected methods into native code and runs alongside bytecode obfuscators (ZKM and the like) and native protectors such as VMP or Themida. The optional compiler.safe-env mode restores the original JNIEnv* function table on method entry to defeat agent-style JNI pointer hooks.
Any JVM implementing the JNI specification (HotSpot, OpenJ9, GraalVM, Android ART). Stable targets are x86_64 and aarch64 on Linux, Windows, and macOS. See the targets page for the current matrix.
Contact
Questions about licensing, pricing for a specific release, updates,
evaluation samples, or education & research use.
For bugs and technical questions, contact us by email.