public static String[] parse(String[] args)
        throws IOException
    {
        ListBuffer<String> newArgs = new ListBuffer<String>();
        for (int i = 0; i < args.length; i++) {
            String arg = args[i];
            if (arg.length() > 1 && arg.charAt(0) == '@') {
                arg = arg.substring(1);
                if (arg.charAt(0) == '@') {
                    newArgs.append(arg);
                } else {
                    loadCmdFile(arg, newArgs);
                }
            } else {
                newArgs.append(arg);
            }
        }
        return newArgs.toList().toArray(new String[newArgs.length()]);
    }