code: public static void main(final String[] args) throws ServletException, IOException, JspException {
  
  	final Map<String, String> config = toMap(args);
  
  	System.setProperty("lucee.cli.call", "true");
  
  	final boolean useRMI = "true".equalsIgnoreCase(config.get("rmi"));
  
  	File root;
  	final String param = config.get("webroot");
  	if (Util.isEmpty(param, true)) {
  
  	    root = new File("."); // working directory that the java command was called from
  	    config.put("webroot", root.getAbsolutePath());
  	}
  	else {
  
  	    root = new File(param);
  	    root.mkdirs();
  	}
  
  	// System.out.println("set webroot to: " + root.getAbsolutePath());
  
  	String servletName = config.get("servlet-name");
  
  	if (Util.isEmpty(servletName, true)) servletName = "CFMLServlet";
  
  	if (useRMI) {
  
  	    final CLIFactory factory = new CLIFactory(root, servletName, config);
  	    factory.setDaemon(false);
  	    factory.start();
  	}
  	else {
  
  	    final CLIInvokerImpl invoker = new CLIInvokerImpl(root, servletName);
  	    invoker.invoke(config);
  	}
      }
docs: /*
  Config
  
  webroot - webroot directory servlet-name - name of the servlet (default:CFMLServlet) server-name
  - server name (default:localhost) uri - host/scriptname/query cookie - cookies (same pattern as
  query string) form - form (same pattern as query string)