generate ant: replace javac with groovyc only when there are groovy files to compile

This commit is contained in:
Peter Gromov
2009-09-08 14:46:48 +04:00
parent e43b4d1466
commit c2b8b8d6d1
2 changed files with 15 additions and 6 deletions
@@ -12,6 +12,7 @@ import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.compiler.CompilerBundle;
import com.intellij.openapi.progress.ProgressIndicator;
import com.intellij.openapi.progress.Task;
import com.intellij.openapi.progress.ProgressManager;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.ui.Messages;
import com.intellij.openapi.util.io.FileUtil;
@@ -34,13 +35,20 @@ public class GenerateAntBuildAction extends CompileActionBase {
dialog.show();
if (dialog.isOK()) {
final String[] names = dialog.getRepresentativeModuleNames();
final GenerationOptionsImpl genOptions =
new GenerationOptionsImpl(project, dialog.isGenerateSingleFileBuild(), dialog.isFormsCompilationEnabled(), dialog.isBackupFiles(),
dialog.isForceTargetJdk(), dialog.isRuntimeClasspathInlined(), dialog.isIdeaHomeGenerated(), names);
if (!validateGenOptions(project, genOptions)) {
final GenerationOptionsImpl[] genOptions = {null};
Runnable runnable = new Runnable() {
public void run() {
genOptions[0] = new GenerationOptionsImpl(project, dialog.isGenerateSingleFileBuild(), dialog.isFormsCompilationEnabled(), dialog.isBackupFiles(),
dialog.isForceTargetJdk(), dialog.isRuntimeClasspathInlined(), dialog.isIdeaHomeGenerated(), names);
}
};
if (!ProgressManager.getInstance().runProcessWithProgressSynchronously(runnable, "Analyzing project structure...", true, project)) {
return;
}
generate(project, genOptions);
if (!validateGenOptions(project, genOptions[0])) {
return;
}
generate(project, genOptions[0]);
}
}
@@ -17,6 +17,7 @@ import com.intellij.openapi.project.Project;
import com.intellij.util.ArrayUtil;
import org.jetbrains.annotations.NonNls;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.TestOnly;
public class BuildTargetsFactoryImpl extends BuildTargetsFactory {
@@ -38,7 +39,7 @@ public class BuildTargetsFactoryImpl extends BuildTargetsFactory {
return new Comment(comment);
}
//for test
@TestOnly
public GenerationOptions getDefaultOptions(Project project) {
return new GenerationOptionsImpl(project, true, false, false, true, ArrayUtil.EMPTY_STRING_ARRAY);
}