mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
IDEA-92876 Gradle plugin causes -javaagent to appear when running my application
Don't setup groovy hot swapper for gradle files
This commit is contained in:
@@ -34,4 +34,9 @@ public class GradleScriptTypeDetector extends GroovyScriptTypeDetector {
|
||||
public boolean isSpecificScriptFile(@NotNull GroovyFile script) {
|
||||
return GradleConstants.EXTENSION.equals(script.getViewProvider().getVirtualFile().getExtension());
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isHowSwapAware(@NotNull String extension) {
|
||||
return !GradleConstants.EXTENSION.equals(extension);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -21,13 +21,16 @@ import com.intellij.pom.java.LanguageLevel;
|
||||
import com.intellij.psi.search.FilenameIndex;
|
||||
import com.intellij.psi.search.GlobalSearchScope;
|
||||
import com.intellij.util.PathUtil;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.plugins.groovy.GroovyFileTypeLoader;
|
||||
import org.jetbrains.plugins.groovy.debugger.filters.GroovyDebuggerSettings;
|
||||
import org.jetbrains.plugins.groovy.extensions.GroovyScriptTypeDetector;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.jar.Attributes;
|
||||
import java.util.regex.Pattern;
|
||||
@@ -54,7 +57,9 @@ public class GroovyHotSwapper extends JavaProgramPatcher {
|
||||
private static boolean containsGroovyClasses(Project project) {
|
||||
final List<String> extensions = new ArrayList<String>();
|
||||
for (String extension : GroovyFileTypeLoader.getAllGroovyExtensions()) {
|
||||
extensions.add("." + extension);
|
||||
if (isHotSwapAware(extension)) {
|
||||
extensions.add("." + extension);
|
||||
}
|
||||
}
|
||||
final GlobalSearchScope scope = GlobalSearchScope.projectScope(project);
|
||||
for (String fileName : FilenameIndex.getAllFilenames(project)) {
|
||||
@@ -67,6 +72,15 @@ public class GroovyHotSwapper extends JavaProgramPatcher {
|
||||
return false;
|
||||
}
|
||||
|
||||
private static boolean isHotSwapAware(@NotNull String extension) {
|
||||
for (GroovyScriptTypeDetector ep : GroovyScriptTypeDetector.EP_NAME.getExtensions()) {
|
||||
if (!ep.isHowSwapAware(extension)) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
private static boolean hasSpringLoadedReloader(JavaParameters javaParameters) {
|
||||
for (String param : javaParameters.getVMParametersList().getParameters()) {
|
||||
if (SPRING_LOADED_PATTERN.matcher(param).matches()) {
|
||||
|
||||
+4
@@ -53,6 +53,10 @@ public abstract class GroovyScriptTypeDetector {
|
||||
|
||||
public abstract boolean isSpecificScriptFile(@NotNull GroovyFile script);
|
||||
|
||||
public boolean isHowSwapAware(@NotNull String extension) {
|
||||
return true;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public static GroovyScriptType getScriptType(@NotNull GroovyFile script) {
|
||||
for (GroovyScriptTypeDetector detector : EP_NAME.getExtensions()) {
|
||||
|
||||
Reference in New Issue
Block a user