}
public static int run(String[] args){
FileLocations config = new FileLocations();
CmdLineParser parser = new CmdLineParser(config);
try {
// parse the arguments.
parser.parseArgument(args);
} catch (CmdLineException e) {
StringBuilder msg = new StringBuilder();
// if there's a problem in the command line,
// you'll get this exception. this will report
// an error message.
msg.append(e.getMessage());
msg.append("\n");
msg.append("java -jar properties-compiler.jar [options...] source files...\n");
// print the list of available options
StringWriter writer = new StringWriter();
parser.printUsage(writer, null);
msg.append(writer.getBuffer());
msg.append("\n");
// print option sample. This is useful some time
msg.append(" Example: java -jar properties-compiler.jar").append(parser.printExample(REQUIRED));
msg.append("\n");
System.err.println(msg); // NOSONAR this is a commandline tool
return -1;
}
if (!config.getOutputDirectory().exists()) {
throw new IllegalArgumentException("destination directory does not exist: " + config.getOutputDirectory().getAbsolutePath());
}
PropertyClassGenerator generator = new PropertyClassGenerator(config);
generator.generate();