/** TODO: set a property to this value to eliminate the dependency on reflection. */ private static AbstractCommandLineModule getCommandLineModule(final String[] arguments) throws NoSuchMethodException, IllegalAccessException, InvocationTargetException, InstantiationException { final Class<? extends AbstractCommandLineModule> commandLineModuleClass = getCommandLineModuleClass(); final Constructor<? extends AbstractCommandLineModule> commandLineModuleConstructor = commandLineModuleClass.getDeclaredConstructor(); AbstractCommandLineModule module = commandLineModuleConstructor.newInstance(); module.setArguments(arguments); return (module); }