IDEA-103974 stricter pattern for groovy-all.jar name

This commit is contained in:
Max Medvedev
2013-04-11 15:03:53 +04:00
parent 2da70fbc6e
commit 2949e92b9b
@@ -19,7 +19,7 @@ package org.jetbrains.plugins.groovy.config;
import com.intellij.openapi.application.AccessToken;
import com.intellij.openapi.application.WriteAction;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.module.ModuleUtil;
import com.intellij.openapi.module.ModuleUtilCore;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.roots.*;
import com.intellij.openapi.roots.libraries.Library;
@@ -45,7 +45,7 @@ import java.util.regex.Pattern;
* @author ilyas
*/
public abstract class GroovyConfigUtils extends AbstractConfigUtils {
@NonNls public static final Pattern GROOVY_ALL_JAR_PATTERN = Pattern.compile("groovy-all-(.*)\\.jar");
@NonNls public static final Pattern GROOVY_ALL_JAR_PATTERN = Pattern.compile("groovy-all-(\\d.*)\\.jar");
private static GroovyConfigUtils myGroovyConfigUtils;
@NonNls public static final String GROOVY_JAR_PATTERN_NOVERSION = "groovy\\.jar";
@@ -109,7 +109,7 @@ public abstract class GroovyConfigUtils extends AbstractConfigUtils {
}
public boolean isVersionAtLeast(PsiElement psiElement, String version, boolean unknownResult) {
Module module = ModuleUtil.findModuleForPsiElement(psiElement);
Module module = ModuleUtilCore.findModuleForPsiElement(psiElement);
if (module == null) return unknownResult;
final String sdkVersion = getSDKVersion(module);
if (sdkVersion == null) return unknownResult;
@@ -118,7 +118,7 @@ public abstract class GroovyConfigUtils extends AbstractConfigUtils {
@NotNull
public String getSDKVersion(PsiElement psiElement) {
final Module module = ModuleUtil.findModuleForPsiElement(psiElement);
final Module module = ModuleUtilCore.findModuleForPsiElement(psiElement);
if (module == null) {
return NO_VERSION;
}
@@ -131,13 +131,10 @@ public abstract class GroovyConfigUtils extends AbstractConfigUtils {
public boolean isSDKHome(VirtualFile file) {
if (file != null && file.isDirectory()) {
final String path = file.getPath();
if (GroovyUtils.getFilesInDirectoryByPattern(path + "/lib", GROOVY_JAR_PATTERN).length > 0) {
return true;
}
if (GroovyUtils.getFilesInDirectoryByPattern(path + "/lib", GROOVY_JAR_PATTERN_NOVERSION).length > 0) {
return true;
}
if (GroovyUtils.getFilesInDirectoryByPattern(path + "/embeddable", GROOVY_ALL_JAR_PATTERN).length > 0) {
if (GroovyUtils.getFilesInDirectoryByPattern(path + "/lib", GROOVY_JAR_PATTERN).length > 0 ||
GroovyUtils.getFilesInDirectoryByPattern(path + "/lib", GROOVY_JAR_PATTERN_NOVERSION).length > 0 ||
GroovyUtils.getFilesInDirectoryByPattern(path + "/embeddable", GROOVY_ALL_JAR_PATTERN).length > 0 ||
GroovyUtils.getFilesInDirectoryByPattern(path, GROOVY_JAR_PATTERN).length > 0) {
return true;
}
}