in src/archetype/ArchetypeModule.ts [21:49]
export async function createMavenProject(entry: Uri | IProjectCreationMetadata | undefined, _operationId: string): Promise<void> {
const metadata: IProjectCreationMetadata = {
targetFolderHint: workspace.workspaceFolders?.[0]?.uri.fsPath
};
if (entry instanceof Uri) {
metadata.targetFolderHint = entry.fsPath;
} else if (typeof entry === 'object') {
Object.assign(metadata, entry);
}
const steps: IProjectCreationStep[] = [];
if (!metadata.archetypeArtifactId || !metadata.archetypeGroupId || !metadata.archetypeVersion) {
steps.push(selectArchetypeStep, specifyArchetypeVersionStep);
}
if (!metadata.groupId) {
steps.push(specifyGroupIdStep);
}
if (!metadata.artifactId) {
steps.push(specifyArtifactIdStep);
}
if (!metadata.targetFolder) {
steps.push(specifyTargetFolderStep);
}
const success: boolean = await runSteps(steps, metadata);
if (success) {
await executeInTerminalHandler(metadata);
}
}