VALJOGen - Annotation Processor
This is the main project module that contains the annotation processor code, unit-tests and stubbed integration tests. More non-stubbed integration tests are available in the seperate integration test project.
Minimum setup for development:
- Install JDK 1.8+
- Install Maven 3.2.0+
"mvn package" on command line to compile project and run tests.
Optional setup for eclipse
- Install Eclipse Luna 4.4+
- Install Eclipse plugin m2e (from eclipses build-in “Luna” update site)
- Select Import - Maven - Existing Maven Projects and select root folder of all projects
- The processor package contains the annotation processor (generator).
- The model package contains a intermediate representation that is inspected when generating output.
- Top-level model is Clazz which represents a Java class.
- Configuration of generated output is handled by the Configuration class which bases its configuration on class or package level annotations. These
can be overruled by externally configured annotation processor key/values. Names of keys, which strictly correspond to annotation method names, are
defined by ConfigurationOptionKeys.
- A templates folder which contains StringTemplate (v4) template group files. These are responsible for generating the actual output.
Individual log files for all tests are put into target/logs directory. For debugging you may want to increase the logging level in src/test/resources/valjogen.properties