misc JikesCompiler config ui issues (IDEA-26149)

This commit is contained in:
Dmitry Jemerov
2010-06-22 20:37:45 +04:00
parent 20940d2bec
commit a733511552
2 changed files with 16 additions and 6 deletions
@@ -15,11 +15,14 @@
*/
package com.intellij.compiler.impl.javaCompiler.jikes;
import com.intellij.compiler.CompilerConfiguration;
import com.intellij.compiler.CompilerConfigurationImpl;
import com.intellij.compiler.OutputParser;
import com.intellij.compiler.impl.CompilerUtil;
import com.intellij.compiler.impl.javaCompiler.BackendCompiler;
import com.intellij.compiler.impl.javaCompiler.ExternalCompiler;
import com.intellij.compiler.impl.javaCompiler.ModuleChunk;
import com.intellij.compiler.options.CompilerConfigurable;
import com.intellij.compiler.options.JavaCompilersTab;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.compiler.CompileContext;
import com.intellij.openapi.compiler.CompileScope;
@@ -31,6 +34,7 @@ import com.intellij.openapi.project.Project;
import com.intellij.openapi.projectRoots.Sdk;
import com.intellij.openapi.ui.Messages;
import com.intellij.openapi.util.io.FileUtil;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.pom.java.LanguageLevel;
import com.intellij.util.ArrayUtil;
@@ -43,6 +47,7 @@ import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.StringTokenizer;
@@ -57,7 +62,7 @@ public class JikesCompiler extends ExternalCompiler {
public boolean checkCompiler(final CompileScope scope) {
String compilerPath = getCompilerPath();
if (compilerPath == null) {
if (StringUtil.isEmpty(compilerPath)) {
Messages.showMessageDialog(
myProject,
CompilerBundle.message("jikes.error.path.to.compiler.unspecified"), CompilerBundle.message("compiler.jikes.name"),
@@ -65,7 +70,7 @@ public class JikesCompiler extends ExternalCompiler {
);
openConfigurationDialog();
compilerPath = getCompilerPath(); // update path
if (compilerPath == null) {
if (StringUtil.isEmpty(compilerPath)) {
return false;
}
}
@@ -80,7 +85,7 @@ public class JikesCompiler extends ExternalCompiler {
);
openConfigurationDialog();
compilerPath = getCompilerPath(); // update path
if (compilerPath == null) {
if (StringUtil.isEmpty(compilerPath)) {
return false;
}
if (!new File(compilerPath).exists()) {
@@ -92,7 +97,12 @@ public class JikesCompiler extends ExternalCompiler {
}
private void openConfigurationDialog() {
ShowSettingsUtil.getInstance().editConfigurable(myProject, CompilerConfigurable.getInstance(myProject));
final CompilerConfigurationImpl configuration = (CompilerConfigurationImpl)CompilerConfiguration.getInstance(myProject);
final Collection<BackendCompiler> compilers = configuration.getRegisteredJavaCompilers();
final BackendCompiler defaultCompiler = configuration.getDefaultCompiler();
final JavaCompilersTab compilersTab = new JavaCompilersTab(myProject, compilers, defaultCompiler);
ShowSettingsUtil.getInstance().editConfigurable(myProject, compilersTab);
}
private String getCompilerPath() {
@@ -100,7 +100,7 @@ javac.error.tools.jar.missing=Cannot obtain path javac classes for JDK {0}.\nUpd
javac.error.unknown.jdk.version=Cannot determine version for JDK {0}.\nUpdate JDK configuration.
javac.error.1_0_compilation.not.supported=Compilation is not supported for JDK 1.0
compiler.jikes.name=Jikes
jikes.error.path.to.compiler.unspecified=Cannot start Jikes compiler.nThe path to compiler executable is not configured
jikes.error.path.to.compiler.unspecified=Cannot start Jikes compiler.\nThe path to compiler executable is not configured
jikes.error.path.to.compiler.missing=Cannot start Jikes compiler.\nThe file {0} not found.
compiler.configurable.display.name=Compiler
label.option.honor.dependencies=Honor &dependencies on "Compile" command