How do I add javax.annotation.Generated to Java SE 5?
Solution 1
You can get javax.annotation.Generated
, along with various other classes from that package, from the Maven central repo at this location. You can just download the JARs, you don't need to use Maven to get them.
Answer courtesy of GrepCode.
Solution 2
According to javax.annotation.Generated javadoc, its retention is Source, so the annotation won't be compiled to your classes (and result classes with and without this annotation are the same). So your customers never need any jar file containing this annotation, as long as you distribute compiled classes.
Solution 3
You can just comment them, they are retained only on the source level.
rob
Do you like to make stuff? Join the Woodworking Stack Exchange! http://woodworking.stackexchange.com http://area51.stackexchange.com/proposals/61927/woodworking
Updated on June 12, 2022Comments
-
rob almost 2 years
I'm working on a project that has to run on Java SE 5 and Java SE 6. I recently started using a tool that adds
@Generated
annotations to generated code, and I want to keep those annotations. It looks likejavax.annotation.Generated
is in Java 5 EE and Java 6 SE and later, but is not in the Java 5 SE API.What's the best way to include
javax.annotation.Generated
when I send it to the customer, so it will run on both Java SE 5 and Java SE 6 without any problems? Do I just need to include an extra jarfile? If so, which one does@Generated
live in? -
rob about 12 yearsThanks for the extra info; it's good to know. I neglected to mention it in the question, but we do also give this customer source releases.
-
rob about 12 yearsCertainly a valid solution if I only had to generate the code once and never again, but I'd also be concerned about any headaches this might cause future maintainers who don't realize they just need to recomment the annotations after regenerating the code.
-
MahdeTo about 12 yearsIf you are using eclipse you can add a builder that removes or comments them out using sed for example. Or a build script would work equally well.
-
rob about 12 yearsTrue, but still more effort than just adding the jarfile. Thanks for the "outside-the-box" solution though. :)
-
JJD over 9 yearsThanks to @skaffman. For a Gradle build the dependency should be
compile 'org.glassfish:javax.annotation:10.0-b28'
then. -
nicopico about 8 yearsalso available with
compile 'javax.annotation:jsr250-api:1.0'