maven概念

maven是优秀的项目管理和构建工具。
	作用:    1、项目命令构建   2、jar包插件管理
举例

公司现要做一个web项目,用ssm框架,此时首先要把这些框架的jar包全部下下来,放入lib包下,此时会有几十个jar包,版本可能还不统一,并且还有一些冗余的包要处理,所以会很繁琐。

下载

maven.apache.org

安装

直接解压下来即可(注意不同的maven版本)。

maven目录结构:

maven profile 打到target下 maven的target下的目录作用_配置文件


maven profile 打到target下 maven的target下的目录作用_jar包_02

maven项目结构

maven profile 打到target下 maven的target下的目录作用_maven理解_03

maven主要命令

maven profile 打到target下 maven的target下的目录作用_maven_04


1、compile:项目编译。在eclipse中保存代码后会自带编译,生成class文件。也可以单独执行下该命令,会生出maven下的target文件。

2、package:(包含compile)打包,生出对应的jar包或者war包。

3、clean:清除掉编译生成的文件,即删掉target中的class文件。

4、install:打包并发布到本地仓库中。(包含 compile + package,然后上传到本地仓库)

5、deploy:发布命令。打完包把包部署到maven私服中。

【epoly注意事项:

(1)、pom文件中增加配置:

maven profile 打到target下 maven的target下的目录作用_maven理解_05


(2)、上面的配置信息要跟maven的配置文件中的私服地址一致

maven profile 打到target下 maven的target下的目录作用_jar包_06

注:命令可以一次写多个, 然后会挨个执行。

置本地仓库

maven profile 打到target下 maven的target下的目录作用_maven_07

pom文件:用于管理项目依赖和构建过程。

下面是我总结的maven的一些小问题,供参考:

1、在eclipse中安装配置该插件。
一般自带该插件,只需配置下maven的配置文件路径即可。

2、创建maven项目
1)、先选择maven模板
2)、填入maven工程的标识(位置符、项目名 、版本、打包类型)

3、了解maven的生命周期
clean
defalut
site

执行maven命令时,会默认执行前面的生命周期了。

4、pom常用元素
本项目声明
jar包依赖管理
插件管理

5、maven依赖生效范围
标签
表明该依赖关系包是在什么情况下生效,如:编译、测试时,或运行时,或者仅仅打包时生效
值:compile、test、runtime等
6、maven依赖传递
1):依赖关系的设定、以及依赖关系的传递、以及依赖的排除。


2):配置maven项目默认的jdk版本
在setting配置文件中配置。大约172行有个profile
7、依赖版本 冲突
原则:1、短路优先2、先声明的优先(pom中的前后位置)

8、聚合和继承
1)、聚 合
一些平级的工程模块每次都执行相同的命令太麻烦,故可以创建一个新maven工程,把那些工程当成这个工程的子模块,然后就对该工程执行命令,从而达到批量执行效果
标签
2)、继承
对于一些共性的pom中的设置,pom文件也是可以继承实现的。
子中用

父中定义

9、maven构建web项目
1)、maven创建项目,打包格式
2)、web容器插件的管理
jetty和tomcat服务器都可以通过maven去管理。在plugin中配置插件即可。还可以设置在执行什么maven命令中就直接启动服务了。如package的时候,直接启动服务。
3)、查看class文件的输出路径,。