getResourceAsStream在Mac OSX与Windows 7上的工作方式不同?

Tom*_*m H 3 java windows macos unit-testing properties

我有一组依赖于test.properties文件的单元测试用例.当我使用Maven('mvn test')在Mac OSX或Linux下运行测试时,它们工作正常.但是在Windows 7下运行时,除非我将其直接复制到类文件夹,否则无法找到该文件.返回属性的代码有以下两种方法:

private void loadProperties() {
    try {
         properties.load(HibernateTestCase.class.getResourceAsStream(getPropertiesFilePath()));
    } catch (Exception ioExc) {
        ioExc.printStackTrace();
    }
}

private String getPropertiesFilePath() {
    return File.separator + "test.properties";
}
Run Code Online (Sandbox Code Playgroud)

什么是真正的交易?是否所有关于文件路径在某处设置错误?提前致谢!

Tom*_*ine 8

资源名称中的分隔符始终为"/".File.separator从平台到平台各不相同(在UNIX上它通常是变体/,在Windows上它不会).