Skip to end of metadata
Go to start of metadata

JDK 1.5 comes with Sun's Annotation Processing Tool, APT. Ant version 1.7 comes with an apt task. In JDK 1.6, Sun made annotation processing part of the javac process.

In Jedi versions prior to 3.0, there was only one jar, which needs to be on the compile time classpath.

In Jedi versions starting with 3.0, there are several jars:

jar

Purpose

Required at Compile Time?

Required at Runtime?

jedi-core

Runtime library with classes such as FunctionalPrimitives, etc

Yes

Yes

jedi-annotations

Annotations for compile time code generation and resources shared between JDK5 and JDK6 code generation functionality

If you want to use the Jedi code generation functionality

No

jedi-jdk5

Code generation if you are using the JDK5 javac

If you want to use the Jedi code generation functionality

No

jedi-jdk6

Code generation if you are using the JDK6 javac

If you want to use the Jedi code generation functionality

No

Annotation Processor Options

Annotation processor options are specified with the -A switch on the apt command line. None of these options require values; the presence of the option is sufficient.

Option

Effect

jediSuppressSuffixes

Suppress all suffixes added to method names when creating factory methods. Suffixes that may otherwise be added are the word 'Proxy' and the unqualified name of the closure class (e.g. Command). The generated code will contain overloaded methods with the same name as the annotated method. This may not be compileable if the signatures of the overloaded forms are the same.
This option supersedes jediSuppressProxySuffix and jediSuppressClosureTypeSuffix.

jediSuppressProxySuffix

If you want to suppress just the Proxy suffix for generated methods, use this option. This may also cause uncompileable code to be generated.

jediSuppressClosureTypeSuffix

Suppresses just the closure type from being appended to the name of the generated method. This can cause uncompileable code to be generated if the method is annotated with more than one @Jedi annotation. This can be fixed with the name parameter of the annotations.

jediSuppressAccessorVerbs

Suppresses accessor method prefixes (get and is) when creating factory methods.

Labels: