...
During the boot process, the system loads the report configuration and loads and initializes the known JFreeReport modules.
Loading report configuration
The report configuration can be separated into a local, a global and a defaults section. Entries from the local section are used by the report system to configure a specific report instance. The values for these keys are defined in the report and do not affect other reports.
...
then simply place your jfreereport.properties file into this directory.
Initializing the modules
Once the report configuration is completely initalized, the modules will be loaded and initialized.
...
If a module is part of a larger subsystem, it will be guaranteed, that all subsystem modules are initialized and configured before any dependent modules get configured.
Writing modules
Module specification basics
Modules define all metadate necessary to successfully load and use the classes of the module. The modules define a set of core attributes, so that the module management can be automated.
...
Additionally a module may contain a set of required and optional modules. The package manager will use this information to resolve all dependencies and to load and initialize these base packages. Modules with a version less than the required version are considered non-existent and will not be used. Missing or invalid required modules will cause the loading process to fail, missing optional modules are ignored.
Module specification implementation
A module specification is implemented by creating a class which implements the org.jfree.report.modules.Module interface. Such an module requires an public default constructor, as the module class will be instantiated by
Class.newInstance();.
...