diff --git a/build.sbt b/build.sbt
index 9591be9d9aa84069c0bf141e48410d925ec3ab11..1660dd3eaef67463e4e9a0d01f8ce0040ae053a9 100644
--- a/build.sbt
+++ b/build.sbt
@@ -27,8 +27,10 @@ lazy val generator = (project in file("."))
       case "MANIFEST.MF" => MergeStrategy.first
       case "plugin.xml" => MergeStrategy.discard
       case "plugin.properties" => MergeStrategy.discard
-      case "schema/generated_package.exsd" => MergeStrategy.discard
-      case "schema/dynamic_package.exsd" => MergeStrategy.discard
+      case "generated_package.exsd" => MergeStrategy.discard
+      case "dynamic_package.exsd" => MergeStrategy.discard
+      case PathList("schema", ps @ _ *) if ps.lastOption.exists(_.endsWith("generated_package.exsd")) => MergeStrategy.discard
+      case PathList("schema", ps @ _ *) if ps.lastOption.exists(_.endsWith("dynamic_package.exsd")) => MergeStrategy.discard
       case x =>
         val oldStrategy = (assemblyMergeStrategy in assembly).value
         oldStrategy(x)