List of usage examples for org.apache.mahout.common CommandLineUtil printHelpWithGenericOptions
public static void printHelpWithGenericOptions(Group group, OptionException oe) throws IOException
From source file:my.mahout.AbstractJob.java
License:Apache License
/** * * @param args The args to parse//from w w w. java2 s. co m * @param inputOptional if false, then the input option, if set, need not be present. If true and input is an option * and there is no input, then throw an error * @param outputOptional if false, then the output option, if set, need not be present. If true and output is an * option and there is no output, then throw an error * @return the args parsed into a map. */ public Map<String, List<String>> parseArguments(String[] args, boolean inputOptional, boolean outputOptional) throws IOException { Option helpOpt = addOption(DefaultOptionCreator.helpOption()); addOption("tempDir", null, "Intermediate output directory", "temp"); addOption("startPhase", null, "First phase to run", "0"); addOption("endPhase", null, "Last phase to run", String.valueOf(Integer.MAX_VALUE)); GroupBuilder gBuilder = new GroupBuilder().withName("Job-Specific Options:"); for (Option opt : options) { gBuilder = gBuilder.withOption(opt); } group = gBuilder.create(); CommandLine cmdLine; try { Parser parser = new Parser(); parser.setGroup(group); parser.setHelpOption(helpOpt); cmdLine = parser.parse(args); } catch (OptionException e) { log.error(e.getMessage()); CommandLineUtil.printHelpWithGenericOptions(group, e); return null; } if (cmdLine.hasOption(helpOpt)) { CommandLineUtil.printHelpWithGenericOptions(group); return null; } try { parseDirectories(cmdLine, inputOptional, outputOptional); } catch (IllegalArgumentException e) { log.error(e.getMessage()); CommandLineUtil.printHelpWithGenericOptions(group); return null; } argMap = new TreeMap<String, List<String>>(); maybePut(argMap, cmdLine, this.options.toArray(new Option[this.options.size()])); this.tempPath = new Path(getOption("tempDir")); if (!hasOption("quiet")) { log.info("Command line arguments: {}", argMap); } return argMap; }