diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/plugins/groovy/MavenGroovyInjector.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/plugins/groovy/MavenGroovyInjector.java index 7c529bfd21f4..30648f82c6bf 100644 --- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/plugins/groovy/MavenGroovyInjector.java +++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/plugins/groovy/MavenGroovyInjector.java @@ -18,12 +18,14 @@ package org.jetbrains.idea.maven.plugins.groovy; import org.jetbrains.idea.maven.utils.MavenPluginConfigurationLanguageInjector; import org.jetbrains.plugins.groovy.GroovyFileType; +import java.util.Arrays; + /** * @author Sergey Evdokimov */ public class MavenGroovyInjector extends MavenPluginConfigurationLanguageInjector { public MavenGroovyInjector() { - super("source", "org.codehaus.groovy.maven", "gmaven-plugin", GroovyFileType.GROOVY_LANGUAGE); + super("source", Arrays.asList("org.codehaus.groovy.maven", "org.codehaus.gmaven"), "gmaven-plugin", GroovyFileType.GROOVY_LANGUAGE); } } diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/utils/MavenPluginConfigurationLanguageInjector.java b/plugins/maven/src/main/java/org/jetbrains/idea/maven/utils/MavenPluginConfigurationLanguageInjector.java index 29981e608193..d1fddf9efa1b 100644 --- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/utils/MavenPluginConfigurationLanguageInjector.java +++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/utils/MavenPluginConfigurationLanguageInjector.java @@ -26,13 +26,16 @@ import com.intellij.psi.xml.XmlText; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import java.util.Collection; +import java.util.Collections; + /** * @author Sergey Evdokimov */ public class MavenPluginConfigurationLanguageInjector implements LanguageInjector { private final String myParameterName; - private final String myPluginGroupId; + private final Collection myPluginGroupIds; private final String myPluginArtifactId; private final Language myLanguage; @@ -40,8 +43,15 @@ public class MavenPluginConfigurationLanguageInjector implements LanguageInjecto @NotNull String pluginGroupId, @NotNull String pluginArtifactId, @Nullable Language language) { + this(parameterName, Collections.singleton(pluginGroupId), pluginArtifactId, language); + } + + protected MavenPluginConfigurationLanguageInjector(@NotNull String parameterName, + @NotNull Collection pluginGroupIds, + @NotNull String pluginArtifactId, + @Nullable Language language) { myParameterName = parameterName; - myPluginGroupId = pluginGroupId; + myPluginGroupIds = pluginGroupIds; myPluginArtifactId = pluginArtifactId; myLanguage = language; } @@ -68,7 +78,7 @@ public class MavenPluginConfigurationLanguageInjector implements LanguageInjecto XmlTag plugin = (XmlTag)pluginTag; XmlTag groupId = plugin.findFirstSubTag("groupId"); - if (groupId == null || !groupId.getValue().getText().trim().equals(myPluginGroupId)) return; + if (groupId == null || !myPluginGroupIds.contains(groupId.getValue().getText().trim())) return; XmlTag artifactId = plugin.findFirstSubTag("artifactId"); if (artifactId == null || !artifactId.getValue().getText().trim().equals(myPluginArtifactId)) return; diff --git a/plugins/maven/src/test/java/org/jetbrains/idea/maven/plugins/groovy/MavenGroovyInjectionTest.groovy b/plugins/maven/src/test/java/org/jetbrains/idea/maven/plugins/groovy/MavenGroovyInjectionTest.groovy index 13b5a2d37a34..acc7e4b4eeef 100644 --- a/plugins/maven/src/test/java/org/jetbrains/idea/maven/plugins/groovy/MavenGroovyInjectionTest.groovy +++ b/plugins/maven/src/test/java/org/jetbrains/idea/maven/plugins/groovy/MavenGroovyInjectionTest.groovy @@ -67,6 +67,45 @@ class MavenGroovyInjectionTest extends LightCodeInsightFixtureTestCase { + +""") + + myFixture.completeBasic() + + def lookups = myFixture.lookupElementStrings + assert lookups.containsAll(["String", "StringBuffer", "StringBuilder"]) + } + + public void testCompletion2() { + myFixture.configureByText("pom.xml", """ + + + 4.0.0 + + simpleMaven + simpleMaven + 1.0 + + jar + + + + + org.codehaus.gmaven + gmaven-plugin + 1.3 + + + + String + + + + + + """)