public static void runEntryPoint(Class<? extends TextGroupEntryPoint> entryPointClass,
      Class<? extends Module> configModuleClass, String[] args) throws Exception {
    runEntryPointInternal(entryPointClass, args, configModuleClass);
  }
public static void runEntryPoint ( Class < ? extends TextGroupEntryPoint > entryPointClass , Class < ? extends Module > configModuleClass , String [ ] args ) throws Exception { runEntryPointInternal ( entryPointClass , args , configModuleClass ) ; }
Runs a {@link TextGroupEntryPoint}.  The entry point class will be injected using a {@link
Injector} configured by two modules: a {@link com.bbn.bue.common.parameters.ParametersModule}
initialized by loading the first (and required-to-be-only) argument in {@code args} and an
instance of {@code configModuleClass} instantiated according to the rules of {@link
ModuleUtils#instantiateModule(Class, Parameters)}.  This method will then call {@link
TextGroupEntryPoint#run()} on the injected entry point object.

This method also provides some convenient features for debugging, controlled by parameters:

<ul>

<li>{@code ccom.bbn.bue.common.debug.allowExceptionsToPassUncaught}: (default false) In
production use, we always want to catch exceptions and explicitly exit to ensure a non-zero
exit code (which the JVM does not guarantee).  However, sometimes in debugging it is useful to
suppress this behavior, because it blocks IntelliJ's useful "break on uncaught exceptions only"
option. Therefore we allow the user to disable it with this parameter.</li>

<li>{@code com.bbn.bue.common.debug.graphGuiceDependenciesTo}: (default absent) If specified, a
{@code dot} file for the Guice dependencies will be written to the specified file. If {@code
com.bbn.bue.common.debug.skipExecution} is specified and true, the normal execution of the
program will be skipped.</li>

</ul>