peterreilly    2005/02/25 10:57:35

  Modified:    src/main/org/apache/tools/ant Tag: ANT_16_BRANCH Main.java
               src/main/org/apache/tools/ant/launch Tag: ANT_16_BRANCH
                        Launcher.java
  Log:
  sync up support for -noclasspath and -nouserlib
  
  Revision  Changes    Path
  No                   revision
  No                   revision
  1.95.2.9  +25 -22    ant/src/main/org/apache/tools/ant/Main.java
  
  Index: Main.java
  ===================================================================
  RCS file: /home/cvs/ant/src/main/org/apache/tools/ant/Main.java,v
  retrieving revision 1.95.2.8
  retrieving revision 1.95.2.9
  diff -u -r1.95.2.8 -r1.95.2.9
  --- Main.java 21 Jun 2004 22:15:05 -0000      1.95.2.8
  +++ Main.java 25 Feb 2005 18:57:35 -0000      1.95.2.9
  @@ -1,5 +1,5 @@
   /*
  - * Copyright  2000-2004 The Apache Software Foundation
  + * Copyright 2000-2005 The Apache Software Foundation
    *
    *  Licensed under the Apache License, Version 2.0 (the "License");
    *  you may not use this file except in compliance with the License.
  @@ -28,7 +28,6 @@
   import java.util.Vector;
   import org.apache.tools.ant.input.DefaultInputHandler;
   import org.apache.tools.ant.input.InputHandler;
  -import org.apache.tools.ant.util.JavaEnvUtils;
   import org.apache.tools.ant.launch.AntMain;
   
   
  @@ -117,7 +116,7 @@
       /**
        * optional thread priority
        */
  -    private Integer threadPriority=null;
  +    private Integer threadPriority = null;
   
       /**
        * Prints the message of the Throwable if it (the message) is not
  @@ -410,18 +409,18 @@
                   keepGoingMode = true;
               } else if (arg.equals("-nice")) {
                   try {
  -                    threadPriority=Integer.decode(args[i + 1]);
  +                    threadPriority = Integer.decode(args[i + 1]);
                   } catch (ArrayIndexOutOfBoundsException aioobe) {
                       throw new BuildException(
  -                            "You must supply a niceness value (1-10)"+
  -                            " after the -nice option");
  +                            "You must supply a niceness value (1-10)"
  +                            + " after the -nice option");
                   } catch (NumberFormatException e) {
  -                    throw new BuildException("Unrecognized niceness value: " 
+
  -                            args[i + 1]);
  +                    throw new BuildException("Unrecognized niceness value: "
  +                                             + args[i + 1]);
                   }
                   i++;
  -                if(threadPriority.intValue()<Thread.MIN_PRIORITY ||
  -                        threadPriority.intValue()>Thread.MAX_PRIORITY) {
  +                if (threadPriority.intValue() < Thread.MIN_PRIORITY
  +                    || threadPriority.intValue() > Thread.MAX_PRIORITY) {
                       throw new BuildException(
                               "Niceness value is out of the range 1-10");
                   }
  @@ -603,17 +602,13 @@
               InputStream in = System.in;
   
               // use a system manager that prevents from System.exit()
  -            // only in JDK > 1.1
               SecurityManager oldsm = null;
  -            if (!JavaEnvUtils.isJavaVersion(JavaEnvUtils.JAVA_1_0)
  -                && !JavaEnvUtils.isJavaVersion(JavaEnvUtils.JAVA_1_1)) {
  -                oldsm = System.getSecurityManager();
  +            oldsm = System.getSecurityManager();
   
                   //SecurityManager can not be installed here for backwards
                   //compatibility reasons (PD). Needs to be loaded prior to
                   //ant class if we are going to implement it.
                   //System.setSecurityManager(new NoExitSecurityManager());
  -            }
               try {
                   if (allowInput) {
                       project.setDefaultInputStream(System.in);
  @@ -631,7 +626,7 @@
                   if (threadPriority != null) {
                       try {
                           project.log("Setting Ant's thread priority to "
  -                                + threadPriority,Project.MSG_VERBOSE);
  +                                + threadPriority, Project.MSG_VERBOSE);
                           
Thread.currentThread().setPriority(threadPriority.intValue());
                       } catch (SecurityException swallowed) {
                           //we cannot set the priority here.
  @@ -814,12 +809,15 @@
           msg.append("  -quiet, -q             be extra quiet" + lSep);
           msg.append("  -verbose, -v           be extra verbose" + lSep);
           msg.append("  -debug, -d             print debugging information" + 
lSep);
  -        msg.append("  -emacs, -e             produce logging information 
without adornments" + lSep);
  -        msg.append("  -lib <path>            specifies a path to search for 
jars and classes" + lSep);
  +        msg.append("  -emacs, -e             produce logging information 
without adornments"
  +                   + lSep);
  +        msg.append("  -lib <path>            specifies a path to search for 
jars and classes"
  +                   + lSep);
           msg.append("  -logfile <file>        use given file for log" + lSep);
           msg.append("    -l     <file>                ''" + lSep);
           msg.append("  -logger <classname>    the class which is to perform 
logging" + lSep);
  -        msg.append("  -listener <classname>  add an instance of class as a 
project listener" + lSep);
  +        msg.append("  -listener <classname>  add an instance of class as a 
project listener"
  +                   + lSep);
           msg.append("  -noinput               do not allow interactive input" 
+ lSep);
           msg.append("  -buildfile <file>      use given buildfile" + lSep);
           msg.append("    -file    <file>              ''" + lSep);
  @@ -832,8 +830,12 @@
           msg.append("  -inputhandler <class>  the class which will handle 
input requests" + lSep);
           msg.append("  -find <file>           (s)earch for buildfile towards 
the root of" + lSep);
           msg.append("    -s  <file>           the filesystem and use it" + 
lSep);
  -        msg.append("  -nice  number          A niceness value for the main 
thread:" + lSep +
  -                   "                         1 (lowest) to 10 (highest); 5 
is the default" + lSep);
  +        msg.append("  -nice  number          A niceness value for the main 
thread:" + lSep
  +                   + "                         1 (lowest) to 10 (highest); 5 
is the default"
  +                   + lSep);
  +        msg.append("  -nouserlib             Run ant without using the jar 
files from" + lSep
  +                   + "                         ${user.home}/.ant/lib" + 
lSep);
  +        msg.append("  -noclasspath           Run ant without using 
CLASSPATH");
           System.out.println(msg.toString());
       }
   
  @@ -1016,7 +1018,8 @@
               msg.append(" ");
               msg.append(names.elementAt(i));
               if (descriptions != null) {
  -                msg.append(spaces.substring(0, maxlen - ((String) 
names.elementAt(i)).length() + 2));
  +                msg.append(
  +                    spaces.substring(0, maxlen - ((String) 
names.elementAt(i)).length() + 2));
                   msg.append(descriptions.elementAt(i));
               }
               msg.append(lSep);
  
  
  
  No                   revision
  No                   revision
  1.5.2.17  +29 -6     ant/src/main/org/apache/tools/ant/launch/Launcher.java
  
  Index: Launcher.java
  ===================================================================
  RCS file: /home/cvs/ant/src/main/org/apache/tools/ant/launch/Launcher.java,v
  retrieving revision 1.5.2.16
  retrieving revision 1.5.2.17
  diff -u -r1.5.2.16 -r1.5.2.17
  --- Launcher.java     8 Sep 2004 11:26:00 -0000       1.5.2.16
  +++ Launcher.java     25 Feb 2005 18:57:35 -0000      1.5.2.17
  @@ -1,5 +1,5 @@
   /*
  - * Copyright  2003-2004 The Apache Software Foundation
  + * Copyright  2003-2005 The Apache Software Foundation
    *
    *  Licensed under the Apache License, Version 2.0 (the "License");
    *  you may not use this file except in compliance with the License.
  @@ -38,11 +38,23 @@
       /** The Ant Library Directory property */
       public static final String ANTLIBDIR_PROPERTY = "ant.library.dir";
   
  +    /** The directory name of the per-user ant directory */
  +    public static final String ANT_PRIVATEDIR = ".ant";
  +
  +    /**
  +     * The location of a per-user library directory
  +     */
  +    public static final String ANT_PRIVATELIB = "lib";
  +
       /** The location of a per-user library directory */
  -    public static final String USER_LIBDIR = ".ant/lib";
  +    public static final String USER_LIBDIR = ANT_PRIVATEDIR + "/" + 
ANT_PRIVATELIB;
   
       /** The startup class that is to be run */
       public static final String MAIN_CLASS = "org.apache.tools.ant.Main";
  +    /**
  +     * system property with user home directory
  +     */
  +    public static final String USER_HOMEDIR = "user.home";
   
       /**
        *  Entry point for starting command line Ant
  @@ -65,7 +77,7 @@
         * @param path        the classpath or lib path to add to the 
libPathULRLs
         * @param getJars     if true and a path is a directory, add the jars in
         *                    the directory to the path urls
  -      * @param libPathURLS the list of paths to add to
  +      * @param libPathURLs the list of paths to add to
         */
       private void addPath(String path, boolean getJars, List libPathURLs)
           throws MalformedURLException {
  @@ -122,6 +134,8 @@
           String cpString = null;
           List argList = new ArrayList();
           String[] newArgs;
  +        boolean  noUserLib = false;
  +        boolean  noClassPath = false;
   
           for (int i = 0; i < args.length; ++i) {
               if (args[i].equals("-lib")) {
  @@ -140,11 +154,19 @@
                           + "not be repeated");
                   }
                   cpString = args[++i];
  +            } else if (args[i].equals("--nouserlib") || 
args[i].equals("-nouserlib")) {
  +                noUserLib = true;
  +            } else if (args[i].equals("--noclasspath") || 
args[i].equals("-noclasspath")) {
  +                noClassPath = true;
               } else {
                   argList.add(args[i]);
               }
           }
   
  +        //decide whether to copy the existing arg set, or
  +        //build a new one from the list of all args excluding the special
  +        //operations that only we handle
  +
           if (libPaths.size() == 0 && cpString == null) {
               newArgs = args;
           } else {
  @@ -153,7 +175,7 @@
   
           List libPathURLs = new ArrayList();
   
  -        if (cpString != null) {
  +        if (cpString != null && !noClassPath) {
               addPath(cpString, false, libPathURLs);
           }
   
  @@ -181,9 +203,10 @@
           URL[] systemJars = Locator.getLocationURLs(antLibDir);
   
           File userLibDir
  -            = new File(System.getProperty("user.home"), USER_LIBDIR);
  -        URL[] userJars = Locator.getLocationURLs(userLibDir);
  +            = new File(System.getProperty(USER_HOMEDIR),
  +                    ANT_PRIVATEDIR + File.separatorChar + ANT_PRIVATELIB);
   
  +        URL[] userJars = noUserLib ? new URL[0] : 
Locator.getLocationURLs(userLibDir);
   
           int numJars = libJars.length + userJars.length + systemJars.length;
           if (toolsJar != null) {
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to