Wizard: always allow user to choose project JDK
This commit is contained in:
+1
-2
@@ -41,7 +41,7 @@ class IdeWizard(
|
||||
JavaRuntimeLibraryDescription(null),
|
||||
LibrariesContainerFactory.createContainer(null as Project?),
|
||||
)
|
||||
|
||||
var jdk: Sdk? = null
|
||||
|
||||
var projectPath by setting(StructurePlugin::projectPath.reference)
|
||||
var projectName by setting(StructurePlugin::name.reference)
|
||||
@@ -69,7 +69,6 @@ class IdeWizard(
|
||||
data class JpsData(
|
||||
val libraryDescription: JavaRuntimeLibraryDescription,
|
||||
val librariesContainer: LibrariesContainer,
|
||||
var jdk: Sdk? = null,
|
||||
val libraryOptionsPanel: LibraryOptionsPanel = LibraryOptionsPanel(
|
||||
libraryDescription,
|
||||
"",
|
||||
|
||||
+3
@@ -90,6 +90,9 @@ class NewProjectWizardModuleBuilder : EmptyModuleBuilder() {
|
||||
model: ModifiableModuleModel?,
|
||||
modulesProvider: ModulesProvider?
|
||||
): List<IdeaModule>? {
|
||||
runWriteAction {
|
||||
wizard.jdk?.let { jdk -> NewProjectUtil.applyJdkToProject(project, jdk) }
|
||||
}
|
||||
val modulesModel = model ?: ModuleManager.getInstance(project).modifiableModel
|
||||
val success = wizard.apply(
|
||||
services = buildList {
|
||||
|
||||
-1
@@ -62,7 +62,6 @@ class IdeaJpsWizardService(
|
||||
modulesIrs: List<ModuleIR>,
|
||||
buildSystem: BuildSystemType
|
||||
): TaskResult<Unit> = runWriteAction {
|
||||
ideWizard.jpsData.jdk?.let { jdk -> NewProjectUtil.applyJdkToProject(project, jdk) }
|
||||
KotlinSdkType.setUpIfNeeded()
|
||||
val projectImporter = ProjectImporter(project, modulesModel, path, modulesIrs)
|
||||
modulesBuilder.addModuleConfigurationUpdater(
|
||||
|
||||
+5
-4
@@ -49,13 +49,15 @@ class ProjectSettingsComponent(ideWizard: IdeWizard) : DynamicComponent(ideWizar
|
||||
component.addBorder(JBUI.Borders.empty(0, /*left&right*/4))
|
||||
}
|
||||
private val buildSystemAdditionalSettingsComponent = BuildSystemAdditionalSettingsComponent(ideWizard).asSubComponent()
|
||||
private val jdkComponent = JdkComponent(ideWizard).asSubComponent()
|
||||
|
||||
private val nameAndLocationComponent = TitledComponentsList(
|
||||
listOf(
|
||||
StructurePlugin::name.reference.createSettingComponent(context),
|
||||
StructurePlugin::projectPath.reference.createSettingComponent(context),
|
||||
projectTemplateComponent,
|
||||
buildSystemSetting
|
||||
buildSystemSetting,
|
||||
jdkComponent
|
||||
),
|
||||
context,
|
||||
stretchY = true,
|
||||
@@ -171,7 +173,6 @@ private class PomSettingsComponent(context: Context) : TitledComponentsList(
|
||||
class KotlinJpsRuntimeComponent(ideWizard: IdeWizard) : DynamicComponent(ideWizard.context) {
|
||||
private val componentList = TitledComponentsList(
|
||||
listOf(
|
||||
JdkComponent(ideWizard),
|
||||
KotlinRuntimeComponentComponent(ideWizard)
|
||||
),
|
||||
ideWizard.context,
|
||||
@@ -187,9 +188,9 @@ private class JdkComponent(ideWizard: IdeWizard) : TitledComponent(ideWizard.con
|
||||
ProjectSdksModel().apply { reset(null) },
|
||||
Condition(javaModuleBuilder::isSuitableSdkType)
|
||||
).apply {
|
||||
ideWizard.jpsData.jdk = selectedJdk
|
||||
ideWizard.jdk = selectedJdk
|
||||
addActionListener {
|
||||
ideWizard.jpsData.jdk = selectedJdk
|
||||
ideWizard.jdk = selectedJdk
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user