Spring Boot 中的classpath
2019-05-01 本文已影响0人
柳源居士
springboot项目创建完成后,会生成该项目名称+iml后缀的文件。该文件位于项目的根目录下。
打开后,在name="NewModuleRootManager"的component声明中,会有几个默认content声明
<content url="file://$MODULE_DIR$/../userpermissions">
<sourceFolder url="file://$MODULE_DIR$/../userpermissions/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/../userpermissions/src/main/resources" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/../userpermissions/src/test/java" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/../userpermissions/target" />
</content>
其中sourceFolder 中声明的就是classpath,只是类型不同。
对应的工程文件目录:
项目目录.png
其中蓝色的java目录:保存项目的java文件。
resources是项目的资源目录,里面通常包含static与templates目录
绿色的test/java目录是编写的测试类的目录。
- 工程编译后,会将src/main/java中的.java文件按照包文件结构编译成.class存入target/classes目录。
- 工程编译后,会将src/main/resources中的static、templates目录里的文件分别拷贝入classes/static 与classes/template 中。结构保持一致。
- 工程编译后,会将test/java 中的文件编译进classes/test-classes目录中。
可以根据项目需要,修改.iml文件的content,来添加不同的资源路径。
延伸:
使用Apache Maven Resources Plugin来灵活配置resources目录。
详见:
http://maven.apache.org/plugins/maven-resources-plugin/