Annotation Type Version


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

      Required Elements 
      Modifier and Type Required Element Description
      java.lang.String[] sources
      Sets paths to resources that provide the version information
      boolean suppressOnError
      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
      java.lang.String[] additionalProperties
      Any additional properties from which information should be obtained
      java.lang.String[] additionalTitles
      The titles for the additional properties specified by additionalProperties() used to present this information in generated help output
      java.lang.String buildProperty
      Sets the property used to find build information (if any)
      java.lang.String componentProperty
      Sets the property used to find the component information (if any)
      java.lang.String dateProperty
      Sets the property used to find build date information (if any)
      java.lang.Class<? extends ResourceLocator>[] sourceLocators
      Resource locators used to find the properties files specified in sources()
      boolean tabular
      Whether to display the version information in a tabular format
      java.lang.String versionProperty
      Sets the property used to find version information (if any)
    • Element Detail

      • sources

        java.lang.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
      • 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
      • componentProperty

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

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

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

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

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

        java.lang.String[] additionalTitles
        The titles for the additional properties specified by additionalProperties() used to present this information in generated help output
        Returns:
        Additional titles
        Default:
        {}
      • 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

        java.lang.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}