From 37d46b7b1ef3e715507a5d8e7f4a0edcd47aaed8 Mon Sep 17 00:00:00 2001 From: Prokopov Egor Date: Thu, 25 Jun 2026 13:08:28 +0400 Subject: [PATCH] =?UTF-8?q?ASPR-3486=20=D0=9F=D1=80=D0=BE=D0=B1=D0=BB?= =?UTF-8?q?=D0=B5=D0=BC=D1=8B=20=D1=81=20Maven?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../maven/execution/MavenRunnerPanel.java | 49 +++++++++++-------- 1 file changed, 28 insertions(+), 21 deletions(-) diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/execution/MavenRunnerPanel.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/execution/MavenRunnerPanel.java index ceda9fa15c23..bd03817a9ae9 100644 --- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/execution/MavenRunnerPanel.java +++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/execution/MavenRunnerPanel.java @@ -15,6 +15,7 @@ import com.intellij.openapi.fileChooser.FileChooserDescriptorFactory; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.ComboBox; import com.intellij.openapi.ui.TextFieldWithBrowseButton; +import com.intellij.openapi.util.SystemInfo; import com.intellij.openapi.util.text.StringUtil; import com.intellij.ui.ComponentUtil; import com.intellij.ui.components.JBTextField; @@ -128,25 +129,27 @@ public class MavenRunnerPanel { panel.add(myEnvVariablesComponent, c); c.gridwidth = 1; - JLabel labelScriptDir = new JLabel(MavenConfigurableBundle.message("maven.settings.runner.script.dir")); - myScriptDirField = new TextFieldWithBrowseButton(); - myScriptDirField.addBrowseFolderListener(myProject, FileChooserDescriptorFactory.createSingleFolderDescriptor() - .withTitle(MavenConfigurableBundle.message("maven.settings.runner.script.dir.title"))); - String scriptDirTooltip = MavenConfigurableBundle.message("maven.settings.runner.script.dir.tooltip"); - labelScriptDir.setToolTipText(scriptDirTooltip); - myScriptDirField.setToolTipText(scriptDirTooltip); - myScriptDirField.getTextField().setToolTipText(scriptDirTooltip); - ((JBTextField)myScriptDirField.getTextField()).getEmptyText().setText(PathManager.getTempPath()); - labelScriptDir.setLabelFor(myScriptDirField); - c.gridx = 0; - c.gridy++; - c.weightx = 0; - panel.add(labelScriptDir, c); - c.gridx = 1; - c.weightx = 1; - c.insets.left = 10; - panel.add(myScriptDirField, c); - c.insets.left = 0; + if (SystemInfo.isWindows) { + JLabel labelScriptDir = new JLabel(MavenConfigurableBundle.message("maven.settings.runner.script.dir")); + myScriptDirField = new TextFieldWithBrowseButton(); + myScriptDirField.addBrowseFolderListener(myProject, FileChooserDescriptorFactory.createSingleFolderDescriptor() + .withTitle(MavenConfigurableBundle.message("maven.settings.runner.script.dir.title"))); + String scriptDirTooltip = MavenConfigurableBundle.message("maven.settings.runner.script.dir.tooltip"); + labelScriptDir.setToolTipText(scriptDirTooltip); + myScriptDirField.setToolTipText(scriptDirTooltip); + myScriptDirField.getTextField().setToolTipText(scriptDirTooltip); + ((JBTextField)myScriptDirField.getTextField()).getEmptyText().setText(PathManager.getTempPath()); + labelScriptDir.setLabelFor(myScriptDirField); + c.gridx = 0; + c.gridy++; + c.weightx = 0; + panel.add(labelScriptDir, c); + c.gridx = 1; + c.weightx = 1; + c.insets.left = 10; + panel.add(myScriptDirField, c); + c.insets.left = 0; + } JPanel propertiesPanel = new JPanel(new BorderLayout()); propertiesPanel.setBorder(IdeBorderFactory.createTitledBorder(MavenConfigurableBundle.message("maven.settings.runner.properties"), false)); @@ -193,7 +196,9 @@ public class MavenRunnerPanel { myEnvVariablesComponent.setEnvs(data.getEnvironmentProperties()); myEnvVariablesComponent.setPassParentEnvs(data.isPassParentEnv()); - myScriptDirField.setText(data.getScriptDirectory()); + if (myScriptDirField != null) { + myScriptDirField.setText(data.getScriptDirectory()); + } } @@ -209,7 +214,9 @@ public class MavenRunnerPanel { data.setMavenProperties(myPropertiesPanel.getDataAsMap()); data.setEnvironmentProperties(myEnvVariablesComponent.getEnvs()); data.setPassParentEnv(myEnvVariablesComponent.isPassParentEnvs()); - data.setScriptDirectory(myScriptDirField.getText().trim()); + if (myScriptDirField != null) { + data.setScriptDirectory(myScriptDirField.getText().trim()); + } } public Project getProject() {