Configuration
This page documents the configuration options available in the Bozar Web Interface.
Obfuscation Types
Bozar offers three pre-configured levels of protection:
| Type | Description | Best For |
|---|---|---|
| Basic | Standard protection including renaming and string encryption. High compatibility. | Most applications, libraries |
| Advanced | Enhanced protection adding control flow obfuscation. | Desktop applications, sensitive code |
| Experimental | Maximum protection with cutting-edge techniques. | High-security requirements (test thoroughly) |
Dependencies
Bozar expects you to upload the libraries (dependencies) that your application uses.
Separation of Dependencies
Your core application JAR and its dependencies must be separated. Your input JAR should not contain library classes (avoid using "fat" or "uber" JARs as input). Instead, these libraries should be kept as separate JAR files and uploaded to the "Dependencies" section in Bozar.
Automated Handling
The Bozar Maven Plugin handles the entire process automatically. It ensures that your dependencies are correctly identified and uploaded without requiring manual effort.
Troubleshooting
During the obfuscation process, Bozar needs to load these libraries to inspect class hierarchies and compute method frames. If libraries are missing or incorrectly bundled, you may encounter errors such as:
ClassNotFoundExceptionNoClassDefFoundError
Exclusions
You can prevent specific classes, methods, or fields from being obfuscated using exclusion rules.
Reflection Support
Bozar automatically handles standard reflection calls (e.g., Class.forName("com.example.MyClass")). However, dynamic reflection calls (where the class name is constructed at runtime) or external APIs require manual exclusion rules to function correctly.
When using the Maven Plugin, exclusions are configured directly in XML — see the plugin docs for the <exclusions> element.
For detailed syntax and examples, see the Exclusion Rules page.
Analytics
Bozar can inject launch analytics into your application.
- Enable Launch Analytics: When enabled, the application will report launch events (device info, location) to your Bozar dashboard.
- View Analytics Dashboard