diff --git a/src/main/groovy/io/repaint/maven/tiles/TileValidator.groovy b/src/main/groovy/io/repaint/maven/tiles/TileValidator.groovy index 61fe8ad..e9ea50b 100644 --- a/src/main/groovy/io/repaint/maven/tiles/TileValidator.groovy +++ b/src/main/groovy/io/repaint/maven/tiles/TileValidator.groovy @@ -112,6 +112,21 @@ class TileValidator { validModel = null } + if (model.build?.extensions) { + log.error("Tile has extensions and must not have") + validModel = null + } + + if (model.build?.plugins) { + for (plugin in model.build.plugins) { + if (plugin.extensions) { + log.error("Tile has plugins with extensions and must not have") + validModel = null + break + } + } + } + return validModel } } diff --git a/src/test/groovy/io/repaint/maven/tiles/TileValidatorTest.groovy b/src/test/groovy/io/repaint/maven/tiles/TileValidatorTest.groovy index aef3ff2..fb19567 100644 --- a/src/test/groovy/io/repaint/maven/tiles/TileValidatorTest.groovy +++ b/src/test/groovy/io/repaint/maven/tiles/TileValidatorTest.groovy @@ -31,7 +31,7 @@ class TileValidatorTest { public void testValidation() { new TileValidator().loadModel(logger, new File("src/test/resources/bad-tile.xml"), "") - assert errors.size() == 8 + assert errors.size() == 10 assert warnings.size() == 0 assert infos.size() == 0 } diff --git a/src/test/resources/bad-tile.xml b/src/test/resources/bad-tile.xml index 00d8529..aa1279a 100644 --- a/src/test/resources/bad-tile.xml +++ b/src/test/resources/bad-tile.xml @@ -51,5 +51,21 @@ + + + group + artifact + version + true + + + + + group + artifact + version + + +