Annotation Interface Version


@Retention(RUNTIME) @Target(TYPE) public @interface Version
  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
    Sets paths to resources that provide the version information
    boolean
    Sets whether to suppress this help section if there is an error obtaining the version information.
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    Any additional properties from which information should be obtained
    The titles for the additional properties specified by additionalProperties() used to present this information in generated help output
    Sets the property used to find build information (if any)
    Sets the property used to find the component information (if any)
    Sets the property used to find build date information (if any)
    Class<? extends ResourceLocator>[]
    Resource locators used to find the properties files specified in sources()
    boolean
    Whether to display the version information in a tabular format
    Sets the property used to find version information (if any)
  • Element Details

    • sources

      String[] sources
      Sets paths to resources that provide the version information

      When this annotation is converted into a help section these are the files that are scanned for the version information used to produce the Version help section. Files are located using the resource locators specified by sourceLocators() which by default looks for resources on the classpath then as files. You can add the prefixes classpath: or file:// to your source paths to force a specific location to be used

      Each source will be provided as a separate list/table row within the help section depending on the setting of the tabular() field.

      Sources are loaded using Properties.load(java.io.InputStream) which supports either normal Java properties format (key value pairs separated by = with one per line) or Java Manifest files.

      Returns:
      Sources for version information
    • componentProperty

      String componentProperty
      Sets the property used to find the component information (if any)
      Returns:
      Component property
      Default:
      "component"
    • versionProperty

      String versionProperty
      Sets the property used to find version information (if any)
      Returns:
      Version property
      Default:
      "version"
    • buildProperty

      String buildProperty
      Sets the property used to find build information (if any)
      Returns:
      Build property
      Default:
      "build"
    • dateProperty

      String dateProperty
      Sets the property used to find build date information (if any)
      Returns:
      Build Date property
      Default:
      "buildDate"
    • additionalProperties

      String[] additionalProperties
      Any additional properties from which information should be obtained
      Returns:
      Additional properties
      Default:
      {}
    • additionalTitles

      String[] additionalTitles
      The titles for the additional properties specified by additionalProperties() used to present this information in generated help output
      Returns:
      Additional titles
      Default:
      {}
    • suppressOnError

      boolean suppressOnError
      Sets whether to suppress this help section if there is an error obtaining the version information.

      When set to false a runtime error will be thrown if this annotation is used and the version information cannot be successfully obtained. When set to true then if the version information cannot be obtained the help section will either be suppressed if no information was found or if some information was found then partial information is shown.

      Returns:
      True if errors in obtaining version information are suppressed
    • tabular

      boolean tabular
      Whether to display the version information in a tabular format
      Returns:
      True if tabular format, false for list format
      Default:
      false
    • sourceLocators

      Class<? extends ResourceLocator>[] sourceLocators
      Resource locators used to find the properties files specified in sources()
      Returns:
      Resource locators to use
      Default:
      {com.github.rvesse.airline.parser.resources.ClasspathLocator.class, com.github.rvesse.airline.parser.resources.ModulePathLocator.class, com.github.rvesse.airline.parser.resources.FileLocator.class}