Protect a compiled Java archive (.jar) in three steps using the free
Home Workbench:
.jar file in the Target JAR Archive field.
Unlocked accounts in the Client Area can automate bytecode
protection in CI workflows using POST /api/v1/protect with a Bearer API token:
| Pass | When to Enable |
|---|---|
| NameObfuscation + ReflectGuard |
Recommended for all standalone applications. Keep ReflectGuard enabled if
your code uses Class.forName or framework reflection. Add public API
packages to Package Exclusions when building a library JAR.
|
| StringEncrypt + NumberObfuscation | Recommended for hiding license URLs, protocol constants, SQL queries, and error messages from static string scans. |
| FlowObfuscation + InformationRemover | Recommended for deterring decompilers such as CFR, Vineflower, and FernFlower and removing source line numbers from stack traces. |
| TamperProtection + ExpiryTime |
Requires a valid Main-Class entry in META-INF/MANIFEST.MF.
The startup guard runs at the beginning of public static void main(String[]).
|
Protected archives remain standard JVM bytecode and execute on Windows, macOS, and Linux across Java 8 through Java 25 without requiring any external native agent.
Execution Command:
java -jar your-protected-application.jar