PreEmptive Protection - DashO v8.2 User Guide

Selecting a Project Type

PreEmptive Solutions has designed PreEmptive Protection - DashO to meet the needs in varying situations. There are two principal modes for operating DashO.

  1. Advanced (Entry Point) Mode User Interface is best for complex applications or fine-grained control, and where pruning is desired.

  2. Quick Jar Mode User Interface is ideal for simple standalone applications with a main method, and where pruning is not required.

Note: Quick Jar mode is deprecated and will be removed in a future release of DashO.

Following is a list of criteria to consider when deciding whether to use either the Quick Jar or Advanced mode.

Criteria Quick Jar mode is appropriate
if all of the following are met
Advanced mode is appropriate
if any of the following are met
Application Components Application or library that consists of only jars. Limited use of reflection. Application or library that contains jars and directories of class files. Uses reflection-based frameworks such as Spring or Hibernate.
Granularity of Control Coarse – obfuscations can be turned on or off. Fine – obfuscations can be turned on or off and particular classes/methods/fields can be excluded from a single obfuscation.
Pruning All methods and fields should be retained. Unused methods and fields should be removed.
Packaging Obfuscated classes should retain their original packaging. All obfuscated classes should be placed in a single jar.

In Quick Jar mode, DashO checks to see if the manifest of each of the input jars contains the Main‑Class information. The class specified as the Main-Class in the manifest is added as an entry point. If none of the input jars have a main class in the manifest, then all classes within the input jars are added as entry points. The entry point or entry points are used by DashO to analyze what classes are required in the input and supporting jars.


In Quick Jar mode, DashO does not remove any classes from the input jars. The output jar has all the classes from all the input quick jars, and DashO may rename these classes. Non-class files from the input jars are automatically included in the output.

Both project types can be built from the graphical user interface or the command line. DashO also provides tasks for Apache Ant and a plug-in for use with the Eclipse IDE.

PreEmptive Protection - DashO Version 8.2.0. Copyright © 2017 PreEmptive Solutions, LLC