The most important property of software developers is their knowledge. The source code of Java programs can easily be recovered from a delivered jar file. This is fundamentally different from languages like C.
ClassGuard is a tool to prevent Java decompiling. Your Java class files are encrypted using a 128Bit AES encryption. The AES key is generated randomly every time you start the encryption tool. The decryption is done transparently by a custom class loader. The main part of this class loader is written in C to prevent decompiling and other tampering.
The current version additionally contains a license manager for Java applications. The main part of the license manager is also written in C. Java class files are only decrypted if a valid license is found.