IDEA加载文件出现FileNotFoundException:系统找不到指定路径

Properties prop = new Properties();
File file = new File("config/config.properties");

异常如下图:

IDEA加载文件出现FileNotFoundException:系统找不到指定路径_第1张图片

文件路径和名字都没错,而且在Myeclipse下能正常运行,可在IEDA中就是报错。 

后来受StackOverFlow上的一篇文章 Getting FileNotFoundException even though file exists and is spelled correctly的启发,在项目中输出配置文件的绝对路径和当前路径:

File file=new File("config.properties");  
System.out.println(file.getAbsolutePath());
System.out.println(System.getProperty("user.dir"));

输出结果:

E:\program\ocpp-server\central-system-server\config.properties
E:\program\ocpp-server\central-system-server

仔细查看输出信息发现,路径定位的居然是Project路径,而不是实际所在的Module路径。这才使我想起来最开始学习使用时,IntelliJ IDEA官方一篇文章Migrating From Eclipse to IntelliJ IDEA中介绍过,IntelliJ IDEA中的Project,并不是真正的project,它其实跟eclipse中的workspace类似,在IntelliJ IDEA里面“new Project”就相当于我们eclipse的“workspace”,而“new Module”才是创建一个工程。

然后查看项目的启动配置,发现Working Directory中配置的路径果然指到的是Project上面了,因此出现配置文件加载不到配置文件的原因。

解决办法:

在IntelliJ IDEA中使用如上方式加载配置文件,是需要将启动配置中Working Directory选项的路径参数配置为$MODULE_WORKING_DIR$,示例设置如下图: 

IDEA加载文件出现FileNotFoundException:系统找不到指定路径_第2张图片

再次运行,问题解决

你可能感兴趣的:(File,IDEA)