Fork me on GitHub

AspectJ Compiler reference: non-standard options

Mojo's AspectJ Maven Plugin delegates the majority of its arguments to the AspectJ Compiler ("ajc"), which is part of the AspectJ binary distribution. For convenience, the help text and option reference of the AJC's nonstandard options is reproduced below verbatim. Relevant options found in the listing below are mirrored in the options of its goals, as defined in the Plugin Documentation page.

AspectJ Compiler - Eclipse Compiler a00b62fa3572b0 (7Sept2022) - Java17

 AspectJ-specific non-standard options:
    -XnoInline            dont inline advice
    -XnotReweavable       create class files that cant be subsequently rewoven
                          by AspectJ.
    -XserializableAspects allows aspects to implement serializable
    -XterminateAfterCompilation compile classes then terminate before weaving
    -XaddSerialVersionUID calculates and adds the serialVersionUID to any
                          serializable type woven by an aspect
    -Xajruntimetarget:<level> allows code to be generated that targets
                          a 1.2, 1.5, 1.9 level AspectJ runtime (default 1.5)
    -XhasMember           allow hasmethod() and hasfield type patterns in
                          declare parents and declare @type
    -Xjoinpoints:         supply a comma separated list of new joinpoints
                          that can be identified by pointcuts. Values are:
                          arrayconstruction, synchronization