我在尝试检索位于项目根目录之外的 config.properties 文件时遇到以下问题。
所以我有这样的情况:
CONTAINER DIRECTORY
|
|
|------> config.properties
|
|
|------>PROJECT-ROOT
|
|
|
|------> src
|
|
|------> mainPkg (the package name)
|
|
|------> Main (the main class containing the main() method)
通过位于主类中的 main()方法,我必须访问同时位于同一位置的 config.properties 文件项目根文件夹的级别(并且不在项目类路径中)。
我必须使用相对路径所以我必须做这样的事情:从项目内的文件夹开始我必须回来直到 CONTAINER DIRECTORY 这里采用 config.properties 文件
我该怎么办? (我在Windows环境下)
答案 0 :(得分:2)
我认为,在您的情况下,最好使用您的课程提供的Classloader。
它应该像这样工作:
getClass().getClassLoader().getResources("config.properties");
唯一的问题是,您无法在像main这样的静态方法中编译该代码。 如果要以静态方法运行它,则应将其更改为:
Main.class.getClassLoader().getResources("config.properties");