如何仅为测试范围向Grails项目的类路径添加JAR?

时间:2013-11-14 13:45:55

标签: grails testing dependencies

通常情况下,我会在BuildConfig.groovy中为测试范围声明一个测试依赖项,并且知道它只会在类路径中进行测试,并且 not 打包到已部署的应用程序中:

test "org.seleniumhq.selenium:selenium-htmlunit-driver:2.27.0"

我想在测试时加入另一个JAR,但它在maven存储库中不可用,因此我不能像通常那样声明依赖项。

如何将JAR添加到我的项目中,检查它,但声明它只在测试时可用?

我目前正在使用Grails 2.1.1,但将来会使用2.3.x.

感谢。

1 个答案:

答案 0 :(得分:2)

我很确定lib文件夹中的所有jar都是编译范围的,因此你无法将其更改为test。

您可以使用 BuildConfig.groovy 中的配置grails.war.resources在构建过程中排除它们:

// Remove the JDBC jar before the war is bundled
grails.war.resources = { stagingDir ->
  delete(file:"${stagingDir}/WEB-INF/lib/jdbc2_0-stdext.jar")
}

这取自Palmer's post