Package groovy.lang

Annotation Type GrabResolver


  • @Retention(SOURCE)
    @Target({CONSTRUCTOR,FIELD,LOCAL_VARIABLE,METHOD,PARAMETER,TYPE})
    public @interface GrabResolver
    Used to add a repository for resolving Grape dependencies.

    For example:

     @GrabResolver(name='restlet.org', root='http://maven.restlet.org')
     @Grab(group='org.restlet', module='org.restlet', version='1.1.6')
     class MyRestlet extends org.restlet.Restlet {
       // ...
     }
     
    By default, the Grapes subsystem uses an Ivy chained resolver. Each resolver added using @GrabResolver is appended to the chain. By default, the grape subsystem is shared globally, so added resolvers will become available for any subsequent grab calls. Dependency resolution follows Ivy's artifact resolution which tries to resolve artifacts in the order specified in the chain of resolvers.

    Further information about customising grape behavior can be found on the Grape documentation page: http://groovy-lang.org/grape.html.

    • Optional Element Summary

      Optional Elements 
      Modifier and Type Optional Element Description
      boolean initClass
      By default, when a @GrabResolver annotation is used, a Grape.addResolver() call is added to the static initializers of the class the annotatable node appears in.
      boolean m2Compatible
      Defaults to Maven2 compatibility.
      java.lang.String name
      A meaningful name for a repo containing the grape/artifact.
      java.lang.String root
      The URL for a repo containing the grape/artifact.
      java.lang.String value
      Allows a shorthand form which sets the name and root to this value.
    • Element Detail

      • value

        java.lang.String value
        Allows a shorthand form which sets the name and root to this value. Must not be used if name() or root() is non-empty.
        Default:
        ""
      • name

        java.lang.String name
        A meaningful name for a repo containing the grape/artifact. A non-empty value is required unless value() is used.
        Default:
        ""
      • root

        java.lang.String root
        The URL for a repo containing the grape/artifact. A non-empty value is required unless value() is used.
        Default:
        ""
      • m2Compatible

        boolean m2Compatible
        Defaults to Maven2 compatibility. Set false for Ivy only compatibility.
        Default:
        true
      • initClass

        boolean initClass
        By default, when a @GrabResolver annotation is used, a Grape.addResolver() call is added to the static initializers of the class the annotatable node appears in. If you wish to disable this, add initClass=false to the annotation.
        Default:
        true