private static void Main(string[] args) { SetupNlog(); var options = new SimulatorOptions(); if (Parser.Default.ParseArguments(args, options)) { // we cannot mark PluginDirectory option as Required=True, so we manually check here and show help if it is missing. if (string.IsNullOrWhiteSpace(options.PluginDirectory)) { Console.Write(options.GetUsage()); } else { // all seems good, execute the PluginRunner var pluginRunner = new PluginRunner(); pluginRunner.Run(options); } } }