From 7c46a064cef0b2cec828ae24fa908746ef835022 Mon Sep 17 00:00:00 2001 From: Hari Nair Date: Sun, 2 Oct 2022 13:45:52 +0000 Subject: [PATCH] Resolve "retention policy source" --- README.md | 2 +- demo/.classpath | 11 +++++++++++ .../src/main/java/jackfruit/annotations/Comment.java | 2 +- .../main/java/jackfruit/annotations/DefaultValue.java | 2 +- .../main/java/jackfruit/annotations/Jackfruit.java | 2 +- .../src/main/java/jackfruit/annotations/Key.java | 2 +- .../main/java/jackfruit/annotations/ParserClass.java | 2 +- .../java/jackfruit/processor/ConfigProcessor.java | 10 +++++++++- 8 files changed, 26 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 1bc0940..25718b2 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ ## Quick start -Jackfruit processes annotations on Java interfaces and abstract classes to generate code that can read and write Apache Configuration files. The `demo` module includes sample code. In the top level directory, run `mvn clean package`, which will build the annotation library, run the annotation processor on the file `demo/src/main/java/jackfruit/demo/DemoInterface.java`, and generate the class `demo/target/generated-sources/annotations/jackfruit/demo/DemoInterfaceFactory.java`. The file `demo/src/main/java/jackfruit/demo/JackfruitDemo.java` shows some simple examples of use. +Jackfruit processes annotations on Java interfaces and abstract classes to generate code that can read and write Apache Configuration files. In the top level directory, run `mvn clean package`, which will build the annotation library in the `jackfruit` module and run the annotation processor in the `demo` module. The file `demo/src/main/java/jackfruit/demo/JackfruitDemo.java` shows some simple examples of use. ## Introduction diff --git a/demo/.classpath b/demo/.classpath index 88001a2..c426475 100644 --- a/demo/.classpath +++ b/demo/.classpath @@ -34,5 +34,16 @@ + + + + + + + + + + + diff --git a/jackfruit/src/main/java/jackfruit/annotations/Comment.java b/jackfruit/src/main/java/jackfruit/annotations/Comment.java index 191f254..4dd14da 100644 --- a/jackfruit/src/main/java/jackfruit/annotations/Comment.java +++ b/jackfruit/src/main/java/jackfruit/annotations/Comment.java @@ -12,7 +12,7 @@ import java.lang.annotation.Target; * @author nairah1 * */ -@Retention(RetentionPolicy.RUNTIME) +@Retention(RetentionPolicy.SOURCE) @Target(ElementType.METHOD) public @interface Comment { public String value() default ""; diff --git a/jackfruit/src/main/java/jackfruit/annotations/DefaultValue.java b/jackfruit/src/main/java/jackfruit/annotations/DefaultValue.java index b7bfc6d..a282e96 100644 --- a/jackfruit/src/main/java/jackfruit/annotations/DefaultValue.java +++ b/jackfruit/src/main/java/jackfruit/annotations/DefaultValue.java @@ -16,7 +16,7 @@ import java.lang.annotation.Target; * @author nairah1 * */ -@Retention(RetentionPolicy.RUNTIME) +@Retention(RetentionPolicy.SOURCE) @Target(ElementType.METHOD) public @interface DefaultValue { public String value() default ""; diff --git a/jackfruit/src/main/java/jackfruit/annotations/Jackfruit.java b/jackfruit/src/main/java/jackfruit/annotations/Jackfruit.java index fc20294..df5aeca 100644 --- a/jackfruit/src/main/java/jackfruit/annotations/Jackfruit.java +++ b/jackfruit/src/main/java/jackfruit/annotations/Jackfruit.java @@ -18,7 +18,7 @@ import java.lang.annotation.Target; * @author nairah1 * */ -@Retention(RetentionPolicy.RUNTIME) +@Retention(RetentionPolicy.SOURCE) @Target(ElementType.TYPE) public @interface Jackfruit { public String prefix() default ""; diff --git a/jackfruit/src/main/java/jackfruit/annotations/Key.java b/jackfruit/src/main/java/jackfruit/annotations/Key.java index 83ebb13..c1822ac 100644 --- a/jackfruit/src/main/java/jackfruit/annotations/Key.java +++ b/jackfruit/src/main/java/jackfruit/annotations/Key.java @@ -12,7 +12,7 @@ import java.lang.annotation.Target; * @author nairah1 * */ -@Retention(RetentionPolicy.RUNTIME) +@Retention(RetentionPolicy.SOURCE) @Target(ElementType.METHOD) public @interface Key { public String value() default ""; diff --git a/jackfruit/src/main/java/jackfruit/annotations/ParserClass.java b/jackfruit/src/main/java/jackfruit/annotations/ParserClass.java index b079ab2..5ba95fa 100644 --- a/jackfruit/src/main/java/jackfruit/annotations/ParserClass.java +++ b/jackfruit/src/main/java/jackfruit/annotations/ParserClass.java @@ -12,7 +12,7 @@ import java.lang.annotation.Target; * @author nairah1 * */ -@Retention(RetentionPolicy.RUNTIME) +@Retention(RetentionPolicy.SOURCE) @Target(ElementType.METHOD) public @interface ParserClass { public Class value(); diff --git a/jackfruit/src/main/java/jackfruit/processor/ConfigProcessor.java b/jackfruit/src/main/java/jackfruit/processor/ConfigProcessor.java index 4cccef0..8cdd969 100644 --- a/jackfruit/src/main/java/jackfruit/processor/ConfigProcessor.java +++ b/jackfruit/src/main/java/jackfruit/processor/ConfigProcessor.java @@ -48,7 +48,15 @@ import jackfruit.annotations.Key; import jackfruit.annotations.ParserClass; /** - * https://www.javacodegeeks.com/2015/09/java-annotation-processors.html + * Useful references for writing an annotation processor: + * * * @author nairah1 *