diff --git a/plugins/maven/src/main/java/org/jetbrains/idea/maven/utils/MavenUtil.kt b/plugins/maven/src/main/java/org/jetbrains/idea/maven/utils/MavenUtil.kt
index 616be71f8777..718492c209a0 100644
--- a/plugins/maven/src/main/java/org/jetbrains/idea/maven/utils/MavenUtil.kt
+++ b/plugins/maven/src/main/java/org/jetbrains/idea/maven/utils/MavenUtil.kt
@@ -1982,7 +1982,7 @@ object MavenUtil {
fun isMaven410(xmlns: String?, schemaLocation: String?): Boolean {
if (xmlns == null || schemaLocation == null) return false
- val schemaLocations = schemaLocation.split(' ')
+ val schemaLocations = schemaLocation.split(' ', '\n')
return (xmlns == MAVEN_4_XMLNS || xmlns == MAVEN_4_XMLNS_HTTPS)
&& schemaLocations.all {
it.isNullOrBlank() ||
diff --git a/plugins/maven/src/test/java/org/jetbrains/idea/maven/inspections/dom/MavenNewModelVersionInOldSchemaInspectionTest.kt b/plugins/maven/src/test/java/org/jetbrains/idea/maven/inspections/dom/MavenNewModelVersionInOldSchemaInspectionTest.kt
index 2505b80956fc..9f1041303b6f 100644
--- a/plugins/maven/src/test/java/org/jetbrains/idea/maven/inspections/dom/MavenNewModelVersionInOldSchemaInspectionTest.kt
+++ b/plugins/maven/src/test/java/org/jetbrains/idea/maven/inspections/dom/MavenNewModelVersionInOldSchemaInspectionTest.kt
@@ -69,6 +69,40 @@ class MavenNewModelVersionInOldSchemaInspectionTest: MavenDomTestCase() {
checkHighlighting()
}
+
+ @Test
+ fun testCheckNotHighlightingModel4_1_manySpaces() = runBlocking{
+ assumeModel_4_1_0("testing only for model 4.1.0")
+ setRawPomFile("""
+
+ 4.1.0
+ my.group
+ artifact
+ 1.0
+
+ """.trimIndent())
+ checkHighlighting()
+ }
+
+ @Test
+ fun testCheckNotHighlightingModel4_1_newLine() = runBlocking{
+ assumeModel_4_1_0("testing only for model 4.1.0")
+ setRawPomFile("""
+
+ 4.1.0
+ my.group
+ artifact
+ 1.0
+
+ """.trimIndent())
+ checkHighlighting()
+ }
+
@Test
fun testCheckNotHighlightingModel4_1_underscore() = runBlocking{
assumeModel_4_1_0("testing only for model 4.1.0")
diff --git a/plugins/maven/src/test/java/org/jetbrains/idea/maven/utils/MavenUtilTest.java b/plugins/maven/src/test/java/org/jetbrains/idea/maven/utils/MavenUtilTest.java
index 584047d26592..af0507380ab1 100644
--- a/plugins/maven/src/test/java/org/jetbrains/idea/maven/utils/MavenUtilTest.java
+++ b/plugins/maven/src/test/java/org/jetbrains/idea/maven/utils/MavenUtilTest.java
@@ -99,4 +99,17 @@ public class MavenUtilTest extends MavenTestCase {
Files.writeString(file.toNioPath(), str, StandardCharsets.ISO_8859_1);
assertEquals("mytestpath", MavenUtil.getRepositoryFromSettings(file.toNioPath()));
}
+
+ public void testIsMaven41() throws IOException {
+ assertFalse(MavenUtil.INSTANCE.isMaven410(null, null));
+ assertFalse(MavenUtil.INSTANCE.isMaven410(null, "http://maven.apache.org/POM/4.1.0 http://maven.apache.org/xsd/maven-4.1.0.xsd"));
+ assertFalse(MavenUtil.INSTANCE.isMaven410("http://maven.apache.org/POM/4.1.0", null));
+ assertFalse(MavenUtil.INSTANCE.isMaven410("http://maven.apache.org/POM/4.1.0", "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"));
+ assertFalse(MavenUtil.INSTANCE.isMaven410("http://maven.apache.org/POM/4.0.0", "http://maven.apache.org/POM/4.1.0 http://maven.apache.org/xsd/maven-4.1.0.xsd"));
+ assertTrue(MavenUtil.INSTANCE.isMaven410("http://maven.apache.org/POM/4.1.0", "http://maven.apache.org/POM/4.1.0 http://maven.apache.org/xsd/maven-4.1.0.xsd"));
+ assertTrue(MavenUtil.INSTANCE.isMaven410("https://maven.apache.org/POM/4.1.0", "https://maven.apache.org/POM/4.1.0 https://maven.apache.org/xsd/maven-4.1.0.xsd"));
+ assertTrue(MavenUtil.INSTANCE.isMaven410("https://maven.apache.org/POM/4.1.0", "https://maven.apache.org/POM/4.1.0 https://maven.apache.org/xsd/maven-4.1.0.xsd"));
+ assertTrue(MavenUtil.INSTANCE.isMaven410("https://maven.apache.org/POM/4.1.0", "https://maven.apache.org/POM/4.1.0 https://maven.apache.org/xsd/maven-4.1.0.xsd https://maven.apache.org/maven-v4_1_0.xsd"));
+ assertTrue(MavenUtil.INSTANCE.isMaven410("https://maven.apache.org/POM/4.1.0", "https://maven.apache.org/POM/4.1.0\nhttps://maven.apache.org/xsd/maven-4.1.0.xsd\n https://maven.apache.org/maven-v4_1_0.xsd"));
+ }
}
\ No newline at end of file