Browse documentation
Documentation / Exclusions & configuration / Trial / evaluation mode

Trial / evaluation mode

Protects a deterministic subset of your project's eligible classes, so you can inspect the output before licensing the full build.

Implemented

What it does

Protects only a fraction of eligible classes instead of the whole JAR, selected by sorted internal class name, not at random, so the same input always produces the same trial output. Every unselected eligible class is written through unchanged, byte for byte. See Configuration for the flag.

Why a partial fraction, and why it's a parameter, not fixed

A trial has to do two things at once. It has to show the protection works: a prospect opening the output in a decompiler needs to see renamed, encrypted, nativized classes with cross-references between them, not one isolated toy example. It also has to leave most of the codebase readable, or there's no reason to buy a full licence. The exact fraction is a parameter instead of a hardcoded constant, since the right go-to-market percentage is a business decision, not an architectural one.

Verified. Run against an unmodified Apache Commons Exec build at a 20% fraction: the selected subset of classes was protected and nativized correctly, and an unselected class was byte-for-byte identical to the original input.