The current configuration of Dila requires a list of package name (patterns) that cover all target packages to be instrumented.
In addition, specific packages that cannot/shouldn't be loaded with the custom class loader and classes that cannot be instrumented have to be specified by an exclusion list.
The following configuration options could allow a developer to deal with this complex configuration in a more intuitive way:
DEFAULT: nothing specified
- classes in "java.class.path" are considered to be target classes
- classes in "sun.boot.class.path" are library classes
EXCLUSIONS, but no inclusions specified
- classes in "java.class.path", except EXCLUSIONS are considered to be target classes
- classes in "sun.boot.class.path" and in EXCLUSIONS are library classes
INCLUSIONS, but no exclusions specified
- classes in INCLUSIONS are considered to be target classes
- all other classes are library classes
INCLUSIONS and EXCLUSIONS specified
- classes in INCLUSIONS are considered to be target classes, except those specified in EXCLUSIONS
- classes NOT in INCLUSIONS or in EXCLUSIONS are library classes