Maven标准目录结构介绍
Maven的目录结构和传统的项目有所差别,下面是一个jar包通常有的目录结构:
1.maven工程结构
src
-- main
-- java
-- resources
-- filters
-- webapp
-- test
-- java
-- resources
-- filters
target
.git
pom.xml
2.目录介绍
在目录顶层,包括两个文件夹src
和target
,以及pom.xml
文件和.git
文件。
src
中包含构建项目的所有文件,包括源代码和资源;target
文件夹用来存放项目编译build之后的结果,包括编译后产生的jar包、war包、编译的class文件等;- pom.xml是maven项目的核心配置文件;
.git
是git仓库的文件。
在src
目录下,主要分为两个文件夹main
和test
,这两个文件夹中的内容基本相似。均有java
、resources
、filters
。其中,java存放代码,resources存资源文件,filters存资源过滤文件。但是:
main
文件夹中是项目的主代码及资源,项目中业务开发、逻辑实现都是在该文件夹中;test
文件存放用于测试的文件,用测试的代码和资源。
在main
目录下,还包括webapp
目录,它是web应用源代码所在的目录,例如Web-INF、html文件和web.xml等都在该目录下,同时通常还包含js、images、css等子目录。
除此以外,在src
目录下还包括一些不常用的目录:站点文件site、组件(Assembly)描述符所在的目录assembly、集成测试代码所在的目录it。
另外:
-
src/main/java:源代码目录
-
src/main/resources:资源文件目录
-
src/test/java:测试代码目录
-
src/test/resources:测试资源文件目录
这里只是部分结构,像jar或者war工程如果有源代码的一般是这个结构,但这个结构也不是必须的,不同的项目不同的需求也可以有不同的结构。
以下是maven具体给出的希望的目录结构,并且使用模板创建maven项目也是按照这种结构,所以大家尽量遵守这种规范。