使用maven管理java web项目时,我们往往会被eclipse上展示的目录结构所迷惑,明明有个Java Resources包,为啥又冒出个src文件夹呢?
我们先看看整体的目录结构:
经过对比,可以发现src下多了一个webapp文件夹,这个文件夹里存放着项目所有页面资源。
项目右键>Properties>Deployment Assembly。
可以看到src/main/java,src/main/resources,src/test/java目录编译后的部署路径都是
WEB-INF/classes,而编译前WEB-INF的父目录就是webapp,webapp编译后的父目录又是根目录,所以最直观的体现是,编译后项目名下所有的文件夹名称其实就是编译前webapp下的所有文件夹名。而Java Resources包其实只是方便开发人员开发,特地从src包中分离出来的。
编译前的webapp目录结构
编译后的项目目录结构
而现在WEB-INF下多了原项目java resources的编译文件,就在classes文件夹中