2014-11-05 105 views
0

我在测试/集成路径下创建了一个文件夹资源,用于存储将在集成测试阶段使用的数据文件。类路径中的测试文件

我用那么

private static final Resource jsonCategory = new ClassPathResource("resources/testdata.json") 

它的工作对当地的简单测试程序(无特殊选项),但是当jenkings拍摄代码并尝试运行它们失败的测试,因为

java.io.FileNotFoundException: class path resource [resources/testdata.json] cannot be resolved to URL because it does not exist 

我检查过文件在同一位置......但似乎由未知的原因jenking无法在类路径中找到它们。

这可能吗? ...你有什么想法让詹金斯解决我在本地的相同类路径吗?

到那个詹金斯使用命令行的方式是这样的:

grails -Dgrails.work.dir=/var/lib/jenkins/workspace/myapp-develop//target -Dgrails.env=TEST clean --non-interactive --plain-output --refresh-dependencies 

我所看到的是,这些文件不是在work.dir ......应他们在那里?

+0

我意识到,如果我删除--non-interactive它的作品(?!?!) – Rafael 2014-11-05 12:09:13

回答

1

尝试将您的文件置于test/resources/testdata.file之下并通过new File("test/resources/testdata.file访问它)。

+0

我不能使用绝对路径,因为它可能会超出我的范围...这就是为什么我试图在类路径 – Rafael 2014-11-05 12:17:52

+0

但是使用该文件夹和相同的 “新的ClassPathResource(”test/resources/testdata.json“)”工作! – Rafael 2014-11-05 12:48:38