summaryrefslogtreecommitdiffstats
path: root/org.aspectj.ajdt.core
diff options
context:
space:
mode:
authorwisberg <wisberg>2003-05-06 05:17:50 +0000
committerwisberg <wisberg>2003-05-06 05:17:50 +0000
commitf19d5143d4427db03dc662c26811bb91267d465b (patch)
treec63633e10fe916a32b77f55c24ffe52df1abf2dc /org.aspectj.ajdt.core
parentb50545ddf32db3927edb3283b75e941c73e9b9ad (diff)
downloadaspectj-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.java7
-rw-r--r--org.aspectj.ajdt.core/src/org/aspectj/ajdt/ajc/BuildArgParser.java7
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 {