Inteilj IDEA多级目录生成踩坑记

我们日常都习惯使用Inteilj IDEA进行日常的Java 后台项目的开发,常常需要生成多级文件夹构成的目录。在用于存放main.java的源文件目录下,例如要生层一个包含多级com/example/demo的多级文件目录,直接新建一个package,名称填写com.example.demo即可,IDEA会系统帮我们将填写的com.example.demo生成一个嵌套的多级目录。

于此类似,在resources资源文件夹目录下,有时我们也需要建立多级目录,例如在编写SPI机制的Demo的过程中,需要建立一个META-INF/services的多级目录,目录下是一个以接口路径命名的文本文件。如果采用与源文件目录下下建立多级目录类似的方式去操作,那么恭喜你,跟在下一样踩坑了:此时IDEA并不会帮助你生成META-INF嵌套services的多级目录,而是生成一个名称为META-INF.services的单级目录。

Inteilj IDEA多级目录生成踩坑记_第1张图片
image.png

下面说一下排查问题的过程:
首先,看一下直接new package,name ="META-INF.services"时生成的classes文件夹目录结构:


Inteilj IDEA多级目录生成踩坑记_第2张图片
image.png

再看一下先在resources目录下先建立META-INF文件夹,再建立services文件夹的方式,生成的class文件夹目录结构:

Inteilj IDEA多级目录生成踩坑记_第3张图片
image.png

解决方案比较蠢,多次点击new package的方式建立多级目录。

你可能感兴趣的:(Inteilj IDEA多级目录生成踩坑记)