jvmtp is a commercial product, licensed perpetually and per‑update. You buy a specific release, that build is yours to use forever. Every purchase includes free patch updates (x.y.Z) and the next 3 minor versions at no extra cost; further minor and major updates come at a reduced price, with minor updates discounted the most. There is no subscription, no recurring fee, and no license server, so the JAR you receive keeps working indefinitely. Every license produces JNI libraries for all supported target platforms.

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.
request a quote →
  • One-time payment, no expiry
  • Free patch (x.y.Z) updates
  • Next 3 minor versions included
  • All supported target platforms
  • Built-in + custom intrinsics
  • Safe-environment (anti-hook)
  • Cross-compilation from one host
  • Commercial use of the output
Updates
Tiered by version
Update pricing follows semantic versioning. Skipping an update never disables the build you already own.
ask about updates →
  • Patch (x.y.Z) — free; fixes & bytecode coverage
  • Minor (x.Y.z) — next 3 included, then heavily reduced price
  • Major (X.y.z) — reduced price
  • Buy only the updates you want
  • Existing build keeps working
Samples · Research
On request
Evaluation samples before you buy, and dedicated terms for education and research use.
get in touch →
  • Evaluation / sample builds
  • Education & academic licensing
  • Research & non-commercial use
  • Output samples on request
FAQ
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.
Updates follow semantic versioning. Patch releases (x.y.Z) — bug fixes and bytecode coverage — are free, and every purchase also includes the next 3 minor versions (x.Y.z) at no extra cost. After those, further minor releases come at a heavily reduced price and major releases (X.y.z) at a reduced price, both relative to a fresh purchase. Buying an update is always optional; the build you already own keeps working indefinitely.
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.

email
licensing@jvmtp.dev
response
1 business day