Ejemplo n.º 1
0
  public static void commandRunnerCLI(String[] args) throws Exception {

    Options options = new Options();
    options.addOption("encodings", true, "baseUrls 's encodings");
    options.addOption("baseUrls", true, "baseUrls");
    options.addOption("require", true, "require");
    options.addOption("excludeReg", true, "excludeReg");
    options.addOption("output", true, "output");
    options.addOption("v", "version", false, "version");
    options.addOption("outputEncoding", true, "outputEncoding");
    options.addOption("outputDependency", true, "outputDependency");
    options.addOption("fixModuleName", true, "fixModuleName");

    // create the command line parser
    CommandLineParser parser = new GnuParser();
    CommandLine line;

    try {
      // parse the command line arguments
      line = parser.parse(options, args);
    } catch (ParseException exp) {
      System.out.println("Unexpected exception:" + exp.getMessage());
      return;
    }

    if (line.hasOption("v")) {
      System.out.println("KISSY Module Compiler 1.3.1");
      return;
    }

    Main builder = new Main();

    Packages packages = builder.getPackages();

    String encodingStr = line.getOptionValue("encodings");
    if (encodingStr != null) {
      packages.setEncodings(encodingStr.split(","));
    }

    String baseUrlStr = line.getOptionValue("baseUrls");
    if (baseUrlStr != null) {
      packages.setBaseUrls(baseUrlStr.split(","));
    }

    String fixModuleName = line.getOptionValue("fixModuleName");
    if (fixModuleName != null) {
      builder.setFixModuleName(true);
    }

    builder.setRequire(line.getOptionValue("require"));

    String excludeReg = line.getOptionValue("excludeReg");
    if (excludeReg != null) {
      builder.setExcludePattern(Pattern.compile(excludeReg));
    }

    builder.setOutput(line.getOptionValue("output"));

    String outputEncoding = line.getOptionValue("outputEncoding");
    if (outputEncoding != null) {
      builder.setOutputEncoding(outputEncoding);
    }

    builder.setOutputDependency(line.getOptionValue("outputDependency"));

    builder.run();
  }