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

时间:2019-03-06 21:41:48

标签: java relative intellij-14

我正在努力获取资源文件夹中文件的相对路径。 我花了数小时在其他线程中尝试其他解决方案,但是失败了,我不知道是否由于确切的语法错误而引起的,但是我非常感谢提供有关确切编写内容的帮助。 屏幕截图已附上

文件设置

我从类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)

请帮助!我已经花了太长时间了。

structure

按建议尝试使用ClassLoader,但这在propertiesUtil中不起作用,我也不十分确定如何与已有内容一起编写(因为它抱怨静态/非静态)。从TestRunner运行以尝试调试和理解时,它并没有给我太多有用的信息。 ClassLoader

我也尝试过在其他地方看到的类似内容。相同的问题: non-static to static error

2 个答案:

答案 0 :(得分:0)

尝试这样的事情。

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

答案 1 :(得分:0)

很棒!那很棒。供发现此问题的任何人参考-这是具有上述修复功能的代码的屏幕截图!

Working code now implemented