@Test public void testLoadConfigParameter() throws Exception { String[] args = new String[]{"--config", "config"}; String configName = AppConfigFileLoader.loadFromCLI("programName", args); assertThat(configName, equalTo("config")); }
public static String loadFromCLI(String programName, String... args) throws ConfigParseException { ArgumentParser parser = ArgumentParsers.newArgumentParser("java -jar " + programName + "-[VERSION].jar").defaultHelp(true); parser.addArgument("--config").metavar("/path/to/app-config.json").required(true).help("Path to configuration file"); try { Namespace cli = parser.parseArgs(args); return cli.getString("config"); } catch (ArgumentParserException e) { parser.handleError(e); throw new ConfigParseException(e); } }
AppConfigFileLoader { public static String loadFromCLI(String programName, String... args) throws ConfigParseException { ArgumentParser parser = ArgumentParsers.newArgumentParser("java -jar " + programName + "-[VERSION].jar").defaultHelp(true); parser.addArgument("--config").metavar("/path/to/app-config.json").required(true).help("Path to configuration file"); try { Namespace cli = parser.parseArgs(args); return cli.getString("config"); } catch (ArgumentParserException e) { parser.handleError(e); throw new ConfigParseException(e); } } }
AppConfigFileLoader { public static String loadFromCLI(String programName, String... args) throws ConfigParseException { ArgumentParser parser = ArgumentParsers.newArgumentParser("java -jar " + programName + "-[VERSION].jar").defaultHelp(true); parser.addArgument("--config").metavar("/path/to/app-config.json").required(true).help("Path to configuration file"); try { Namespace cli = parser.parseArgs(args); return cli.getString("config"); } catch (ArgumentParserException e) { parser.handleError(e); throw new ConfigParseException(e); } } private  AppConfigFileLoader(); }
AppConfigFileLoader { public static String loadFromCLI(String programName, String... args) throws ConfigParseException { ArgumentParser parser = ArgumentParsers.newArgumentParser("java -jar " + programName + "-[VERSION].jar").defaultHelp(true); parser.addArgument("--config").metavar("/path/to/app-config.json").required(true).help("Path to configuration file"); try { Namespace cli = parser.parseArgs(args); return cli.getString("config"); } catch (ArgumentParserException e) { parser.handleError(e); throw new ConfigParseException(e); } } private  AppConfigFileLoader(); static String loadFromCLI(String programName, String... args); }
AppConfigFileLoader { public static String loadFromCLI(String programName, String... args) throws ConfigParseException { ArgumentParser parser = ArgumentParsers.newArgumentParser("java -jar " + programName + "-[VERSION].jar").defaultHelp(true); parser.addArgument("--config").metavar("/path/to/app-config.json").required(true).help("Path to configuration file"); try { Namespace cli = parser.parseArgs(args); return cli.getString("config"); } catch (ArgumentParserException e) { parser.handleError(e); throw new ConfigParseException(e); } } private  AppConfigFileLoader(); static String loadFromCLI(String programName, String... args);  }