{
  "name": "ant",
  "description": "A software tool for automating software build processes",
  "parserDirectives": {
    "flagsArePosixNoncompliant": true
  },
  "options": [
    {
      "names": [
        "--help",
        "-help",
        "-h"
      ],
      "description": "Show help for ant"
    },
    {
      "names": [
        "--noconfig"
      ],
      "description": "Suppress sourcing of /etc/ant.conf, $HOME/.ant/ant.conf, and $HOME/.antrc configuration files"
    },
    {
      "names": [
        "--usejikes"
      ],
      "description": "Enable use of jikes by default, unless set explicitly in configuration files"
    },
    {
      "names": [
        "--execdebug"
      ],
      "description": "Print ant exec line generated by this launch script"
    },
    {
      "names": [
        "-projecthelp",
        "-p"
      ],
      "description": "Print project help information and exit"
    },
    {
      "names": [
        "-version"
      ],
      "description": "Print the version information and exit"
    },
    {
      "names": [
        "-diagnostics"
      ],
      "description": "Print information that might be helpful to diagnose or report problems and exit"
    },
    {
      "names": [
        "-quiet",
        "-q"
      ],
      "description": "Be extra quiet"
    },
    {
      "names": [
        "-silent",
        "-S"
      ],
      "description": "Print nothing but task outputs and build failures"
    },
    {
      "names": [
        "-verbose",
        "-v"
      ],
      "description": "Be extra verbose"
    },
    {
      "names": [
        "-debug",
        "-d"
      ],
      "description": "Print debugging information"
    },
    {
      "names": [
        "-emacs",
        "-e"
      ],
      "description": "Produce logging information without adornments"
    },
    {
      "names": [
        "-lib"
      ],
      "description": "Specifies a path to search for jars and classes",
      "args": [
        {
          "name": "path",
          "template": "folders"
        }
      ]
    },
    {
      "names": [
        "-logfile",
        "-l"
      ],
      "description": "Use given file for log",
      "args": [
        {
          "name": "file",
          "template": "filepaths"
        }
      ]
    },
    {
      "names": [
        "-logger"
      ],
      "description": "The class which is to perform logging",
      "args": [
        {
          "name": "classname"
        }
      ]
    },
    {
      "names": [
        "-listener"
      ],
      "description": "Add an instance of class as a project listener",
      "args": [
        {
          "name": "classname"
        }
      ]
    },
    {
      "names": [
        "-noinput"
      ],
      "description": "Do not allow interactive input"
    },
    {
      "names": [
        "-buildfile",
        "-file",
        "-f"
      ],
      "description": "Use given buildfile",
      "args": [
        {
          "name": "file",
          "template": "filepaths"
        }
      ]
    },
    {
      "names": [
        "-keep-going",
        "-k"
      ],
      "description": "Execute all targets that do not depend on failed target(s)"
    },
    {
      "names": [
        "-propertyfile"
      ],
      "description": "Load all properties from file with -D properties taking precedence",
      "args": [
        {
          "name": "name",
          "template": "filepaths"
        }
      ]
    },
    {
      "names": [
        "-inputhandler"
      ],
      "description": "The class which will handle input requests",
      "args": [
        {
          "name": "class"
        }
      ]
    },
    {
      "names": [
        "-find",
        "-s"
      ],
      "description": "Search for buildfile towards the root of the filesystem and use it",
      "args": [
        {
          "name": "file"
        }
      ]
    },
    {
      "names": [
        "-nice"
      ],
      "description": "A niceness value for the main thread",
      "args": [
        {
          "name": "number"
        }
      ]
    },
    {
      "names": [
        "-nouserlib"
      ],
      "description": "Run ant without using the jar files from ${user.home}/.ant/lib"
    },
    {
      "names": [
        "-noclasspath"
      ],
      "description": "Run ant without using CLASSPATH"
    },
    {
      "names": [
        "-autoproxy"
      ],
      "description": "Java1.5+: use the OS proxy settings"
    },
    {
      "names": [
        "-main"
      ],
      "description": "Override Ant's normal entry point",
      "args": [
        {
          "name": "class"
        }
      ]
    }
  ],
  "args": [
    {
      "name": "target",
      "isOptional": true,
      "isVariadic": true,
      "generators": [
        {
          "script": [
            "bash",
            "-c",
            "command ant -p | grep -i '^\\s' | tr -d ' '"
          ],
          "cache": {
            "strategy": "stale-while-revalidate",
            "cacheByDir": true
          }
        }
      ]
    }
  ]
}
