Browse Source

Made the -projecthelp only print out targets that have coresponding descriptions unless loglevel is verbose or debug.

Don't you hate it when you forget to commit changes?


git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@269712 13f79535-47bb-0310-9956-ffa450edef68
master
Peter Donald 24 years ago
parent
commit
602c461fed
1 changed files with 23 additions and 25 deletions
  1. +23
    -25
      src/main/org/apache/tools/ant/Main.java

+ 23
- 25
src/main/org/apache/tools/ant/Main.java View File

@@ -403,7 +403,7 @@ public class Main {

final Project project = new Project();
project.setCoreLoader(coreLoader);
Throwable error = null;

try {
@@ -416,7 +416,10 @@ public class Main {
try {
System.setOut(new PrintStream(new DemuxOutputStream(project, false)));
System.setErr(new PrintStream(new DemuxOutputStream(project, true)));
project.fireBuildStarted();

if (!projectHelp) {
project.fireBuildStarted();
}
project.init();
project.setUserProperty("ant.version", getAntVersion());

@@ -444,24 +447,24 @@ public class Main {
} catch (NullPointerException npe) {
throw new BuildException(noParserMessage, npe);
}

if (projectHelp) {
printDescription(project);
printTargets(project, msgOutputLevel > Project.MSG_INFO );
return;
}
// make sure that we have a target to execute
if (targets.size() == 0) {
targets.addElement(project.getDefaultTarget());
}
if (!projectHelp) {
project.executeTargets(targets);
}
project.executeTargets(targets);
}
finally {
System.setOut(out);
System.setErr(err);
}
if (projectHelp) {
printDescription(project);
printTargets(project);
}
}
catch(RuntimeException exc) {
error = exc;
@@ -472,7 +475,9 @@ public class Main {
throw err;
}
finally {
project.fireBuildFinished(error);
if (!projectHelp) {
project.fireBuildFinished(error);
}
}
}

@@ -595,7 +600,7 @@ public class Main {
/**
* Print out a list of all targets in the current buildfile
*/
private static void printTargets(Project project) {
private static void printTargets(Project project, boolean printSubTargets) {
// find the target with the longest name
int maxLength = 0;
Enumeration ptargets = project.getTargets().elements();
@@ -626,23 +631,16 @@ public class Main {
}
}

printTargets(topNames, topDescriptions, "Main targets:", maxLength);
if( printSubTargets ) {
printTargets(subNames, null, "Subtargets:", 0);
}

String defaultTarget = project.getDefaultTarget();
if (defaultTarget != null && !"".equals(defaultTarget)) { // shouldn't need to check but...
Vector defaultName = new Vector();
Vector defaultDesc = null;
defaultName.addElement(defaultTarget);

int indexOfDefDesc = topNames.indexOf(defaultTarget);
if (indexOfDefDesc >= 0) {
defaultDesc = new Vector();
defaultDesc.addElement(topDescriptions.elementAt(indexOfDefDesc));
}
printTargets(defaultName, defaultDesc, "Default target:", maxLength);

System.out.println( "Default target: " + defaultTarget );
}

printTargets(topNames, topDescriptions, "Main targets:", maxLength);
printTargets(subNames, null, "Subtargets:", 0);
}

/**


Loading…
Cancel
Save