1
0
Fork 0
mirror of https://github.com/ethauvin/version-processor.git synced 2025-04-24 15:37:12 -07:00
A simple apt example built with Kobalt
Find a file
2015-11-14 07:36:17 -08:00
.idea Update 2015-11-10 15:13:45 -08:00
example Minor improvements. 2015-11-14 07:36:17 -08:00
kobalt/wrapper 0.252. 2015-11-13 17:43:13 -08:00
processor Minor improvements. 2015-11-14 07:36:17 -08:00
.gitignore Update 2015-11-10 15:13:45 -08:00
apt-example.iml Initial commit 2015-11-09 20:15:06 -08:00
Build.kt Build file. 2015-11-13 17:43:05 -08:00
kobaltw 0.246. 2015-11-10 14:43:38 -08:00
README.md Minor improvements. 2015-11-14 07:36:17 -08:00
run 0.246. 2015-11-10 14:43:38 -08:00

A simple annotation processing example

This project demonstrates a simple annotation processor that is built with Kobalt.

There are two modules in this project:

  • The processor (processor/)
  • The example using the processor (example/)

The processor project defines an annotation @Version that lets you specify a version number in two ways:

  • Either provide a value for the version.
  • Or you provide a fileName pointing to a Properties file. This file contains the version number either with the default key version or with your own key, which you can specify with the propertyName attribute.

For example:

@Version(fileName = "example/src/main/properties/version.properties",
    propertyName = "example.version")
public class A {
// ...

And the content of the version.properties file:

example.version=1.4

When the annotation processor is run, it generates a source file GeneratedVersion.java with a static field containing that version number.

The example project has a single class Example which is annotated with @Version and which then displays the value of the version from the GeneratedVersion generated class.

To build and run the example:


./kobaltw run