tok*_*khi 11 java junit unit-testing
我有一个file.dat在src/main/resources.
当我尝试通过jar文件测试加载此文件的类时,测试失败,因为它无法在path(I/O Exception)中找到该文件.我通过测试获得的路径是:
/home/usr/workspace/project/target/test-classes/file.dat
但文件不存在于target/test-classes任何想法?
Jon*_*lin 19
从文件src/main/resources将可在主程序运行时类路径,而无论是从文件src/main/resources,并src/test/resources会在试运行期间可在classpath.
检索驻留在类路径上的文件的一种方法是:
Object content = Thread.currentThread().getContextClassLoader().getResource("file.dat").getContent();
Run Code Online (Sandbox Code Playgroud)
..其中的类型content取决于文件内容.您还可以将文件作为InputStream获取:
InputStream contentStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("file.dat");
Run Code Online (Sandbox Code Playgroud)