2014-11-05 121 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