Class Main

  • All Implemented Interfaces:
    AntMain

    public class Main
    extends java.lang.Object
    implements AntMain
    Command line entry point into Ant. This class is entered via the canonical `public static void main` entry point and reads the command line arguments. It then assembles and executes an Ant project.

    If you integrating Ant into some other tool, this is not the class to use as an entry point. Please see the source code of this class to see how it manipulates the Ant project classes.

    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String DEFAULT_BUILD_FILENAME
      The default build file name.
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
        Main()
      Constructor used when creating Main for later arg processing and startup
      protected Main​(java.lang.String[] args)
      Deprecated.
      since 1.6.x
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void addBuildListeners​(Project project)
      Adds the listeners specified in the command line arguments, along with the default listener, to the specified project.
      protected void exit​(int exitCode)
      This operation is expected to call System.exit(int), which is what the base version does.
      static java.lang.String getAntVersion()
      Returns the Ant version information, if available.
      static java.lang.String getShortAntVersion()
      Returns the short Ant version information, if available.
      static void main​(java.lang.String[] args)
      Command line entry point.
      static void start​(java.lang.String[] args, java.util.Properties additionalUserProperties, java.lang.ClassLoader coreLoader)
      Creates a new instance of this class using the arguments specified, gives it any extra user properties which have been specified, and then runs the build using the classloader provided.
      void startAnt​(java.lang.String[] args, java.util.Properties additionalUserProperties, java.lang.ClassLoader coreLoader)
      Start Ant
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • DEFAULT_BUILD_FILENAME

        public static final java.lang.String DEFAULT_BUILD_FILENAME
        The default build file name. "build.xml"
        See Also:
        Constant Field Values
    • Constructor Detail

      • Main

        public Main()
        Constructor used when creating Main for later arg processing and startup
      • Main

        @Deprecated
        protected Main​(java.lang.String[] args)
                throws BuildException
        Deprecated.
        since 1.6.x
        Sole constructor, which parses and deals with command line arguments.
        Parameters:
        args - Command line arguments. Must not be null.
        Throws:
        BuildException - if the specified build file doesn't exist or is a directory.
    • Method Detail

      • start

        public static void start​(java.lang.String[] args,
                                 java.util.Properties additionalUserProperties,
                                 java.lang.ClassLoader coreLoader)
        Creates a new instance of this class using the arguments specified, gives it any extra user properties which have been specified, and then runs the build using the classloader provided.
        Parameters:
        args - Command line arguments. Must not be null.
        additionalUserProperties - Any extra properties to use in this build. May be null, which is the equivalent to passing in an empty set of properties.
        coreLoader - Classloader used for core classes. May be null in which case the system classloader is used.
      • startAnt

        public void startAnt​(java.lang.String[] args,
                             java.util.Properties additionalUserProperties,
                             java.lang.ClassLoader coreLoader)
        Start Ant
        Specified by:
        startAnt in interface AntMain
        Parameters:
        args - command line args
        additionalUserProperties - properties to set beyond those that may be specified on the args list
        coreLoader - - not used
        Since:
        Ant 1.6
      • exit

        protected void exit​(int exitCode)
        This operation is expected to call System.exit(int), which is what the base version does. However, it is possible to do something else.
        Parameters:
        exitCode - code to exit with
      • main

        public static void main​(java.lang.String[] args)
        Command line entry point. This method kicks off the building of a project object and executes a build using either a given target or the default target.
        Parameters:
        args - Command line arguments. Must not be null.
      • addBuildListeners

        protected void addBuildListeners​(Project project)
        Adds the listeners specified in the command line arguments, along with the default listener, to the specified project.
        Parameters:
        project - The project to add listeners to. Must not be null.
      • getAntVersion

        public static java.lang.String getAntVersion()
                                              throws BuildException
        Returns the Ant version information, if available. Once the information has been loaded once, it's cached and returned from the cache on future calls.
        Returns:
        the Ant version information as a String (always non-null)
        Throws:
        BuildException - if the version information is unavailable
      • getShortAntVersion

        public static java.lang.String getShortAntVersion()
                                                   throws BuildException
        Returns the short Ant version information, if available. Once the information has been loaded once, it's cached and returned from the cache on future calls.
        Returns:
        the short Ant version information as a String (always non-null)
        Throws:
        BuildException - BuildException if the version information is unavailable
        Since:
        Ant 1.9.3