public static CompositeCommandResolver Create() { var environment = new EnvironmentProvider(); var packagedCommandSpecFactory = new PackagedCommandSpecFactoryWithCliRuntime(); var publishedPathCommandSpecFactory = new PublishPathCommandSpecFactory(); var platformCommandSpecFactory = default(IPlatformCommandSpecFactory); if (OperatingSystem.IsWindows()) { platformCommandSpecFactory = new WindowsExePreferredCommandSpecFactory(); } else { platformCommandSpecFactory = new GenericPlatformCommandSpecFactory(); } return(CreateDefaultCommandResolver( environment, packagedCommandSpecFactory, platformCommandSpecFactory, publishedPathCommandSpecFactory)); }