diff --git a/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/maven/MavenId.kt b/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/maven/MavenId.kt index 21201f99..bf17ab05 100644 --- a/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/maven/MavenId.kt +++ b/modules/kobalt-plugin-api/src/main/kotlin/com/beust/kobalt/maven/MavenId.kt @@ -17,8 +17,12 @@ class MavenId private constructor(val groupId: String, val artifactId: String, v val classifier: String?, val version: String?) { companion object { - fun isMavenId(id: String) = with(id.split(':')) { - size >= 3 && size <= 5 + fun isMavenId(id: String) = if (id.startsWith("file://")) { + false + } else { + with(id.split(':')) { + size >= 3 && size <= 5 + } } fun isRangedVersion(s: String): Boolean { diff --git a/src/test/kotlin/com/beust/kobalt/maven/MavenIdTest.kt b/src/test/kotlin/com/beust/kobalt/maven/MavenIdTest.kt index 59a5475c..1732274f 100644 --- a/src/test/kotlin/com/beust/kobalt/maven/MavenIdTest.kt +++ b/src/test/kotlin/com/beust/kobalt/maven/MavenIdTest.kt @@ -20,6 +20,16 @@ class MavenIdTest { ) } + @Test + fun isMavenId() { + Assert.assertFalse(MavenId.isMavenId("file://C:\\foo\\bar")) + Assert.assertFalse(MavenId.isMavenId("file:///home/user/foo/bar")) + Assert.assertFalse(MavenId.isMavenId("com.example:foo")) + Assert.assertTrue(MavenId.isMavenId("com.example:foo:")) + Assert.assertTrue(MavenId.isMavenId("com.example:foo:0.5.7")) + Assert.assertTrue(MavenId.isMavenId("com.example:foo:jar:0.3.0")) + } + @Test(dataProvider = "dp") fun parseVersions(id: String, groupId: String, artifactId: String, version: String?, packaging: String?, qualifier: String?) {