JAVA

Maven项目标准目录结构

1 标准目录结构

场景:工作中的项目都是使用Maven的目录结构,虽然能够如期的完成开发工作,但是对于一个Maven工程的配置却并不熟悉,这里主要介绍下Maven工程的而目录结构。

src

  -main
      –bin 脚本库
      –java java源代码文件
      –resources 资源库,会自动复制到classes目录里
      –filters 资源过滤文件
      –assembly 组件的描述配置(如何打包)
      –config 配置文件
      –webapp web应用的目录。WEB-INF、css、js等
  -test
      –java 单元测试java源代码文件
      –resources 测试需要用的资源库
      –filters 测试资源过滤库
  -site Site(一些文档)
target
LICENSE.txt Project’s license
README.txt Project’s readme

工程根目录下就只有src和target两个目录

target是有存放项目构建后的文件和目录,jar包、war包、编译的class文件等。

target里的所有内容都是maven构建的时候生成的

Maven项目的标准目录介绍


Maven提倡使用一个共同的标准目录结构,使开发人员能在熟悉了一个Maven工程后,对其他的Maven工程也能清晰了解。这样做也省去了很多设置的麻烦。

以下的文档介绍是Maven希望的目录结构,并且也是目录创建工程是采用的目录结构。Maven推荐大家尽可能的遵守这样的目录结构。

在顶级目录上是工程的描述文件pom.xml(如果使用Ant则还包括其他属性文件,maven.xml或build.xml),另外还包括提供给最终用户的文件,如,README.txt,LICENSE.txt等等。

顶级目录还包括两个子目录:src,target。顶级目录下可能出现的其他目录仅仅是CVS或.svn和其他多模块工程的工程目录,最好不要再有其他目录。

Target目录是所有工程编译构建的输出目录。

Src目录包含所有工程的源码文件,配置文件,资源文件等等。它下面的子目录一般包含main(主要的工程源文件),test(测试文件),site(项目站点文件)

Maven工程添加新文件夹

新建立的Maven工程是没有resources文件夹的,需要自己去创建。

步骤分为两步:

  • 1、在src的main和test目录下分别建立resources文件夹
  • 2、按照下图所示添加即可

Eclipse 中 maven 工程添加 test 源文件


在 Eclipse 的 maven 工程中,我们会看到 test 文件夹是黑色的:

 有时候,如果我们 src/java 文件夹下面没有任何文件,使用 git push 的时候,远程仓库不会创建这个文件夹,那么我们 pull 下来的时候也不会有这个文件,下面会介绍如何创建 test 文件。

创建 test 源文件

  • 右键工程 > Build Path > Config Build Path > Source > Add Folder
  • 选中 test 文件夹下的 java 和 resources,如果不存在,则自己 create New Folder
  • 编辑 src/test/java 和 src/test/resources 的 Output folder:
  • Edit 对话框中指定 target\test-classes 即可,两个源文件夹都要改。
  • 设置 Contains test sources,点击按钮 Toggle 即可,将它切换成 Yes,那么目录就变成黑色了。
  • 这样,就能还原 maven 工程的源文件夹了