ArchetypeSelector selector = plexus.lookup(ArchetypeSelector.class);
selector.selectArchetype(request, !batch, catalog);
ArchetypeGenerationConfigurator configurator = plexus.lookup(ArchetypeGenerationConfigurator.class);
configurator.configureArchetype(request, !batch, props);
ArchetypeManager archetypeManager = plexus.lookup(ArchetypeManager.class);
ArchetypeGenerationResult generationResult = archetypeManager.generateProjectFromArchetype(request);
if (generationResult.getCause() != null) {
throw generationResult.getCause();