Maven是什么?
maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具.
maven是一个项目管理和综合工具,maven提供了开发人员构建一个完整的生命周期的框架.开发团队可以自动完成项目的基础工具建设,maven使用标准的目录结构和默认构建生命周期.
在多个开发团队环境时,maven可以设置按标准在非常短的时间里完成配置工作.由于大部分项目的设置都很简单,并且可重复使用,maven让开发人员的工作更轻松,同时创建报表,检查,构建和测试自动化设置.
Maven安装
Maven安装目录分析
bin
boot
conf
lib
LICENSE
NOTICE.txt
Bin:该目录包含了mvn运行的脚本,这些脚本用来配置java命令,准备好classpath和相关的java系统属性,然后执行java命令.其中mvn是基于UNIX平台的shell脚本,mvn.bat是基于windows平台的bat脚本.在命令行输入任何一条mvn命令时,实际是在调用这些脚本.该目录还包含了mvnDebug和mvnDebug.bat两个文件,同样,前者是UNIX平台的shell脚本,后者是windows的bat脚本.那么mvn和mvnDebg的区别:mvnDebug多了一条MAVEN_DEBUG_OPTS配置,作用就是在运行maven时开启debug,以便调试maven本身
Boot:该目录只包含一个文件,该文件为plexus-classworlds-2.5.2.jar,plexus-classworlds是一个类加载器框架,相当于默认的java类加载器,他提供了更丰富的语法以方便配置,maven使用该框架加载自己的类库.
Conf:该目录下包含了一个重要的文件setting.xml.直接修改该文件,就能在机器上全局的定制maven的行为
Lib:该目录包含了所有maven运行时需要的java类库,maven本身是分模块开发的,因此用户能看到能看到诸如 mavn-core-3.0.jar、maven-model-3.0.jar 之类的文件,此外这里还包含一些 Maven 用到的第三方依赖如 common-cli-1.2.jar、google-collection-1.0.jar 等等
配置Maven
修改maven home directory,将地址修改为maven的路径;User setting file为setting.xml文件的路径;Local repository 默认路径是在用户的文档下面的.m文件下,建议将其修改为自己的机器上的一个不会被删除的路径.
1)Import Maven projects automatically 表示IntelliJ IDEA会实时监控项目的pom.xml文件,进行项目变动设置.
2)Automatically download 中的Sources,Documentation 表示在maven导入依赖包的时候是否自动下载源码和文档.默认不勾选,这样可以加快项目从外网导入依赖包的速度,如果需要源码和文档的时候再针对某个依赖包进行连网下载即可.IntelliJ IDEA支持直接从公网下载源码和文档.
3)VM options for importer中可以设置导入的VM参数,一般这个不需要自动改,除非项目导入的太慢,我们再增大此参数.
创建java web项目
file→new→project
maven-archetype-webapp
groupId:用来表示项目的名称
ArtifactId:表示项目的模块名称,建议使用项目的名称-模块名来表示.
version:这个项目版本名称.
点击finish后,会自动构建一个java web的项目
创建好的项目列表
这样用IDEA和maven创建的java web项目就完成了,在创建代码的时候和测试代码的时候,代码位置也需要注意.
源代码应该放置到src/main/java中
源代码的资源文件应该放置在src/main/resources文件中
测试代码应该放置到src/test/java中
测试代码的资源文件应该放置到src/test/resources中
总结:
这样就能简单的使用IDEA和maven创建出一个java web项目.
maven除了以程序构建能力为特色外,还提供高级项目管理工具.由于maven的缺省构建规则有较高的可重用性,所以常常用两三行maven构建脚本就可以构建简单的项目.由于maven的面向项目的方法,许多Apache Jakarta项目发文时使用maven,而且公司项目使用maven的比例在持续增长.