diff options
author | wisberg <wisberg> | 2003-05-06 05:17:50 +0000 |
---|---|---|
committer | wisberg <wisberg> | 2003-05-06 05:17:50 +0000 |
commit | f19d5143d4427db03dc662c26811bb91267d465b (patch) | |
tree | c63633e10fe916a32b77f55c24ffe52df1abf2dc /org.aspectj.ajdt.core | |
parent | b50545ddf32db3927edb3283b75e941c73e9b9ad (diff) | |
download | aspectj-f19d5143d4427db03dc662c26811bb91267d465b.tar.gz aspectj-f19d5143d4427db03dc662c26811bb91267d465b.zip |
- special-casing -help to avoid printing usage twice
- guarding usage against loading eclipse message,
which it did if called before some instance loaded the
bundle (which should probably be loaded in a
static initializer)
Diffstat (limited to 'org.aspectj.ajdt.core')
-rw-r--r-- | org.aspectj.ajdt.core/src/org/aspectj/ajdt/ajc/AjdtCommand.java | 7 | ||||
-rw-r--r-- | org.aspectj.ajdt.core/src/org/aspectj/ajdt/ajc/BuildArgParser.java | 7 |
2 files changed, 14 insertions, 0 deletions
diff --git a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/ajc/AjdtCommand.java b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/ajc/AjdtCommand.java index 128a4a917..64dab7244 100644 --- a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/ajc/AjdtCommand.java +++ b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/ajc/AjdtCommand.java @@ -50,6 +50,13 @@ public class AjdtCommand implements ICommand { buildManager = new AjBuildManager(handler); savedArgs = new String[args.length]; System.arraycopy(args, 0, savedArgs, 0, savedArgs.length); + for (int i = 0; i < args.length; i++) { + if ("-help".equals(args[i])) { + // should be info, but handler usually suppresses + MessageUtil.abort(handler, BuildArgParser.getUsage()); + return true; + } + } return doCommand(handler, false); } diff --git a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/ajc/BuildArgParser.java b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/ajc/BuildArgParser.java index 6955b4744..b64b095f6 100644 --- a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/ajc/BuildArgParser.java +++ b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/ajc/BuildArgParser.java @@ -42,6 +42,7 @@ import org.eclipse.jdt.internal.compiler.batch.Main; public class BuildArgParser extends Main { private static final String BUNDLE_NAME = "org.aspectj.ajdt.ajc.messages"; + private static boolean LOADED_BUNDLE = false; /** to initialize super's PrintWriter but refer to underlying StringWriter */ private static class StringPrintWriter extends PrintWriter { @@ -54,6 +55,9 @@ public class BuildArgParser extends Main { /** @return multi-line String usage for the compiler */ public static String getUsage() { + if (!LOADED_BUNDLE) { // get eclipse usage unless bundle loaded... + new BuildArgParser(); + } return Main.bind("misc.usage", Main.bind("compiler.version")); } @@ -72,6 +76,9 @@ public class BuildArgParser extends Main { public BuildArgParser(PrintWriter writer) { super(writer, writer, false); bundle = ResourceBundle.getBundle(BUNDLE_NAME); + if (!LOADED_BUNDLE) { + LOADED_BUNDLE = true; + } if (writer instanceof StringPrintWriter) { errorSink = ((StringPrintWriter) writer).stringWriter.getBuffer(); } else { |