2016-11-29 89 views
0

在我的Java Spring應用程序,我用了一個data-set.sql文件來填充數據測試文件無法打開,因爲它不存在

@RunWith(SpringJUnit4ClassRunner.class) 
@SpringApplicationConfiguration(classes = ConsultationWebApplication.class) 
@Sql(scripts="requests-dataset.sql") 
@DirtiesContext(classMode= ClassMode.AFTER_EACH_TEST_METHOD) 
@ActiveProfiles("test") 
public class StatisticsTest { 

//bla 
//bla 
//bla 
}' 

但是,當我把我的代碼庫中,特拉維斯持續集成 抱怨有:

org.springframework.jdbc.datasource.init.CannotReadScriptException: Cannot read SQL script from class path resource [ee/avok/consultation/service/requests-dataset.sql]; nested exception is java.io.FileNotFoundException: class path resource [ee/avok/consultation/service/requests-dataset.sql] cannot be opened because it does not exist 

的一點是,的測試運行,並通過在本地主機,但它失敗的CI

似乎CI找不到該文件,但該文件位於測試包中。

回答

0

以我的經驗,當您在Windows下開發並且CI服務器在Unix下工作時會發生此類錯誤。

我的猜測是,你已經在Windows中用大寫字母在你的SQL文件路徑中命名了一些文件夾。 Windows不關心大寫或小寫,並在任何情況下找到該文件。 Unix區分大寫和小寫,因此沒有找到文件。

在SQL文件路徑的某處搜索大寫字符。

相關問題