org.gradle.api.tasks

## Annotation Type CompileClasspath

-     @Documented
      @Retention(value=RUNTIME)
      @Target(value={METHOD,FIELD})
      @Incubating
      public @interface CompileClasspath

  Marks a property as specifying a Java compile classpath for a task. Attaching this annotation to a property means that changes that do not affect the API of the classes in classpath will be ignored. The following kinds of changes to the classpath will be ignored:

  - Changes to the path of jar or top level directories.
  - Changes to timestamps and the order of entries in Jars.
  - Changes to resources and Jar manifests, including adding or removing resources.
  - Changes to private class elements, such as private fields, methods and inner classes.
  - Changes to code, such as method bodies, static initializers and field initializers (except for constants).
  - Changes to debug information, for example when a change to a comment affects the line numbers in class debug information.
  - Changes to directories, including directory entries in Jars.

  This annotation should be attached to the getter method or the field for the property.

  Note: to stay compatible with versions prior to Gradle 3.4, classpath properties need to be annotated with @`InputFiles` as well.

  Since:
    3.4