**
Maven基础知识
**
maven 是项目构建工具,用来依赖管理
1.maven的好处
使用传统项目开发的crm,要比同样使用maven开发的项目大很多,同样的功能,
实现的方法都一样,maven没有jar包
项目如何运行?
maven有jar包仓库,项目通过配置jar包坐标信息,maven根据jar包信息查找jar包
2.maven的好处如何实现
核心1:依赖管理:
对jar包的统一管理的过程
核心2:项目构建
项目在编码完成之后,需要对项目进行打包,编译,等等操作,
使用maven命令执行web服务
cd到项目目录,
执行mvn tomcat:run
3.maven安装,配置本地仓库、
安装前提:maven程序是java开发的,运行依赖jdk。
maven的下载安装:apache-maven.XXX.zip
配置环境变量:
将maven_home配置到path中
配置本地仓库(在磁盘上有一个目录,放有各种jar包)
1.找到jar包的压缩包repository
解压并配置:让maven知道仓库在哪
配置setting.xml文件的
E:\briup\maven\repository
4.项目标准目录结构
src:源码
main:主要代码
java
resource:核心配置文件
webapp:相当于存放页面素材,相当于webcontent
test:单元测试
java
resource:不放核心配置文件
target:编译完
pom.xml:maven项目核心配置文件
5.maven的常用命令(应用)
1.清理:clean
进入cmd中,进入项目所在位置,输入mvn clean,删除的是target文件夹
本质上使用的是jar包
2.编译:compile
mvn clear
将java文件编译成.class文件
3.单元测试:test
mvn test
要求:单元测试类以Test结尾:(XXXXTest.java)
将根目录下src/test/java目录下的单元测试类都会执行
4.打包:package(将项目打包到target目录)
mvn package
由项目决定打成的包是jar包还是war包
5.安装:install
解决本地多个项目共用一个jar包。将打好的jar包放入本地仓库中
6.maven项目生命周期
在执行安装操作时,会自动执行一些必要的操作,maven中存在三套生命周期,
每一套生命中期都是相互独立的
(1)CleanLifeCycle :清理生命周期
clean
*(2)defaultLifeCycle:默认生命周期
compile,test,package,install,deploy
(3)siteLifeCycle:站点生命周期
site
6.maven整合web项目案例
6.1.配置eclipse中的maven环境
找到首选项,选择maven,点击installation,配置maven路径
配置usersettings,将setting.xml文件位置选中配置。
构建索引来提高检索效率
点击show view,选择maven repository,选择Local repository下面的,右键rebuilding。
6.2:maven整合项目
项目版本:snapshop(测试版本)、
felfases(正式版本)
创建好的web项目有两个错误:
1.缺失web.xml文件
2.在pom.xml文件添加下面的build
maven项目在创建时会遇到jdk版本不匹配,可以设置maven的jdk版本
设置全局的jdk,在setting.xml文件中的profiles元素下添加如下profile元素
jdk17
true
1.7
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.2</version>
<!-- 设置详细信息 -->
<configuration>
<source>1.7</source>
<target>1.7</target>
<encoding>utf-8</encoding>
</configuration>
</plugin>
</plugins>
</build>
3.添加struts2依赖:
添加struts2核心包,其他包都会自动创建
4.创建struts2配置文件
5.创建Action。java
6.创建核心过滤器
6.6概念模型:
两个核心:
依赖管理:对jar包的管理
项目构建:通过命令进行项目构建
7.总结:
1.安装maven,配置环境
2.maven标准的目录结构
project
src
main
java
resource
webapp
WEB-INF
web.xml
test
pom.xml(项目信息,jdk插件,jar包插件)
3.maven常用命令
4.使用eclipse构建maven项目
(1)区别:不在拷贝jar包,目录结构不同
5.pom.xml:项目对象模型
(1)项目坐标信息;GAV
(2)jdk版本信息
(3)本项目需要的依赖坐标信息