+
diff --git a/installer/java/src/net/i2p/installer/Main.java b/installer/java/src/net/i2p/installer/Main.java
new file mode 100644
index 000000000..7cdd7607c
--- /dev/null
+++ b/installer/java/src/net/i2p/installer/Main.java
@@ -0,0 +1,36 @@
+package net.i2p.installer;
+
+/**
+ *
+ * Execute one of the other classes in this package.
+ * Workaround for izpack bug #162 / our bug #912
+ * http://jira.codehaus.org/browse/IZPACK-162
+ * http://trac.i2p2.i2p/ticket/912
+ *
+ * Usage: copy|delete|exec|fixwinpaths args...
+ *
+ * @since 0.9.6
+ */
+public class Main {
+
+ private static final String USAGE = "Usage: {copy|delete|exec|fixwinpaths} [args...]";
+
+ public static void main(String args[]) {
+ if (args.length == 0)
+ throw new IllegalArgumentException(USAGE);
+ String cmd = args[0];
+ String[] shift = new String[args.length - 1];
+ if (shift.length > 0)
+ System.arraycopy(args, 1, shift, 0, shift.length);
+ if (cmd.equals("copy"))
+ Copy.main(shift);
+ else if (cmd.equals("delete"))
+ Delete.main(shift);
+ else if (cmd.equals("exec"))
+ Exec.main(shift);
+ else if (cmd.equals("fixwinpaths"))
+ FixWinPaths.main(shift);
+ else
+ throw new IllegalArgumentException(USAGE);
+ }
+}