From 9512a60fa6f317b8b45d03a633d1640021b0e836 Mon Sep 17 00:00:00 2001 From: Eugene Yokota Date: Tue, 23 Jul 2019 01:28:32 -0400 Subject: [PATCH] Fix java.util.zip.ZipException: duplicate entry Fixes #4889 #4329 switched from using Map to Seq during packaging. That allowed multiple files to be included with different paths, but it also started admitting duplicate files causing ZipException. --- main-actions/src/main/scala/sbt/Package.scala | 2 +- sbt/src/sbt-test/package/mappings/build.sbt | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/main-actions/src/main/scala/sbt/Package.scala b/main-actions/src/main/scala/sbt/Package.scala index 7dcea5dac..82a9717c8 100644 --- a/main-actions/src/main/scala/sbt/Package.scala +++ b/main-actions/src/main/scala/sbt/Package.scala @@ -104,7 +104,7 @@ object Package { } val inputFiles = conf.sources.map(_._1).toSet - val inputs = conf.sources :+: lastModified(inputFiles) :+: manifest :+: HNil + val inputs = conf.sources.distinct :+: lastModified(inputFiles) :+: manifest :+: HNil cachedMakeJar(inputs)(() => exists(conf.jar)) () } diff --git a/sbt/src/sbt-test/package/mappings/build.sbt b/sbt/src/sbt-test/package/mappings/build.sbt index f135d3067..dc930b4ae 100644 --- a/sbt/src/sbt-test/package/mappings/build.sbt +++ b/sbt/src/sbt-test/package/mappings/build.sbt @@ -5,6 +5,7 @@ version := "0.2" mappings in (Compile, packageBin) ++= { val test = file("test") Seq( + test -> "test1", test -> "test1", test -> "test2" )