无法在 IntelliJ 中获取资源文件的相对路径 - Java/Selenium

Unable to get relative path in IntelliJ for resource file - Java/Selenium

我正在努力获取资源文件夹中文件的相对路径。 我花了几个小时倾注并尝试在其他线程中尝试其他解决方案,但都失败了,我不知道是否由于确切的语法错误,但我真的很感激能提供一些帮助来准确地写什么。 附上截图

文件设置

我 运行 我的测试来自我的 class TestRunner,它转到 PropertiesUtil 让浏览器从 config.properties 文件中 运行 测试。

config.properties 文件位于资源文件夹中,但我无法使用相对路径访问配置文件。它绝对可以正常工作,但这意味着当其他人 运行 时它会失败。

如果我尝试其他路径,我会收到错误消息:

2019-03-06 21:21:16 INFO  TestRunner - Before running
java.io.FileNotFoundException: config.properties (No such file or directory)
    at java.io.FileInputStream.open0(Native Method)
    at java.io.FileInputStream.open(FileInputStream.java:195)

请帮忙!我在这上面停留的时间太长了。

按照建议尝试使用 ClassLoader,但这在 propertiesUtil 中不起作用,我也不太确定如何结合我所拥有的编写它(因为它抱怨 static/non-static)。在从 TestRunner 运行ning 尝试调试和理解时,它没有给我太多有用的信息。 ClassLoader

我也试过在别处看到的类似的东西。同样的问题: non-static to static error

尝试这样的事情。

   public static void readPropertiesFiles() {
        ClassLoader classLoader = PropertiesUtil.class.getClassLoader();
        String path = classLoader.getResource("config.properties").getPath();
        System.out.println(path);
    }

太棒了!!效果很好。供发现此问题的任何人参考 - 这是包含上述修复的代码截图!

Working code now implemented