我有一个测试套件,其中包含多个带有测试数据的文件和文件夹。有些文件在不同的文件夹中有重复的名称。
在SBT中,我有一项任务是生成下载资源并在文件夹中解压缩资源的资源。
build.sbt文件(简化)是:
import sbt._
import sbt.Keys._
resourceGenerators in Test += Def.task {
val shaclTests = url("https://github.com/w3c/data-shapes/raw/gh-pages/data-shapes-test-suite/tests.zip")
IO.unzipURL(shaclTests, resourceManaged.value / "test-suite" ).toSeq
}.taskValue
当我执行sbt test
时,我获得了:
[error] (test:copyResources) Duplicate mappings:
[error] C:\src\pruebas\duplicates-sbt\target\scala-2.10\test-classes\manifest.ttl
[error] from
[error] C:\src\pruebas\duplicates-sbt\target\scala-2.10\resource_managed\test-suite\tests\manifest.ttl
...
抱怨manifest.ttl
文件重复。
如果我删除了它可以使用的重复文件,我认为应该可以在不同的文件夹中包含重复的文件名。
我发现了一些相关问题here但是虽然我尝试使用crossTarget
代替resourceManaged
,但它仍无效。
我还发现this question可能是相关的,但它是关于生成程序集,并且解决方案似乎不适用。