在任务测试中在SBT中运行测试命令时出现重复映射错误:copyResources

时间:2015-06-02 15:00:09

标签: sbt

我有一个测试套件,其中包含多个带有测试数据的文件和文件夹。有些文件在不同的文件夹中有重复的名称。

在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可能是相关的,但它是关于生成程序集,并且解决方案似乎不适用。

0 个答案:

没有答案