maven基础
maven是Apache公司的开源项目,是项目的构建工具,用来对项目进行依赖管理。
1、maven的好处
使用maven创建项目和传统创建项目的方式相比,使用maven创建的项目所占空间更小。 **maven项目找jar包的过程**
若有两个项目A、B,如果项目A是项目B的一个模块,那么项目B中就就不需要在写项目A中的依赖jar包,maven支持项目之间的jar包的继承。
2、maven的好处如何实现
maven的两大核心
(1)依赖管理:对jar包的管理过程
(2)项目构建:项目在编码完成后,对项目进行编译、测试、打包、部署等一系列的操作都通过命令来实现。
通过命令将web项目发布到tomcat上:
3、maven安装、配置本地仓库
maven 程序安装前提:maven程序是使用java语言开发的,它的运行依赖jdk.3.1maven的下载安装
配置环境变量
将MAVEN_HOME环境变量配置到path环境变量中
查看maven的版本信息:
3.2配置本地仓库
仓库类型:
修改maven中心仓库下载到本地jar包的默认存储位置
从maven中心下载到本地的jar包默认存放在
u
s
e
r
.
h
o
m
e
/
.
m
2
/
r
e
p
o
s
i
t
o
r
y
中
,
其
中
{user.home}/.m2/repository中,其中
user.home/.m2/repository中,其中{user.home}表示当前登录用户目录,例如:c:user/jodie。(如果没有创建过maven项目,本地则不存在.m2目录)。repository中是从maven中央仓库下载到本地的jar包
如若想要修改jar包存放的位置,可以通过修改maven安装目录下conf文件下的settings.xml文件来设定
1.首先在我们希望存放的jar包位置处建立repository文件夹
2.打开maven安装目录下conf文件夹下的settings.xml文件
3.找到标签,将标签的内容修改成你所创建的repository文件夹目录
4、maven整合sevlet:
![在这里插入图片描述](https://img-blog.csdn.net/20181015203757364?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MjUyMjQ1Mw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)对项目中文件进行细分:
MavenProjectRoot(项目根目录)
|----src
| |----main
| | |----java ——存放项目的.java文件
| | |----resources ——存放项目资源文件,如spring, hibernate配置文件
| |----test
| | |----java ——存放所有测试.java文件,如JUnit测试类
| | |----resources ——存放项目资源文件,如spring, hibernate配置文件
|----target ——项目输出位置
|----pom.xml ----用于标识该项目是一个Maven项目
5、eclipse创建maven项目:
创建项目的坐标
问题一
点击Finish之后创建完成项目,但会报错,是因为项目目录不完整,缺少web.xml文件,需要在src/main/webapp目录下添加WEB-INF文件夹和web.xml文件
第二种方式:使用eclipse自动生成web.xml文件
第三种方式:查看https://blog.csdn.net/hcrw01/article/details/80248390
问题二
修改jdk版本,在pom.xml添加下面代码,然后右击项目名,maven—>update project, jdk的版本号就修改过来了。
配置compiler方式:
方式一:手动在pom.xml问文件中写下图中的代码
方式二:
右击pom.xml文件–maven—add Plugin
自动添加的配置,没有详细信息,也没有提示,需要自己手动配置。
在src/main/java目录下创建servlet
点击Next就可以看到访问的路径
最后点击Finish完成创建。
问题三
servlet编译报错,报错原因,缺少servlet-api-xx.jar包
查找依赖并添加依赖
也可以在pom.xml文件下右击选择maven—add dependecies
5.1依赖范围(了解)
添加依赖范围:默认是compile(编译)
provide:运行部署到tomcat不在需要
如果将servlet-api.jar设置为compile,打包后含servlet-api.jar. war部署tomcat跟tomcat中的servlet-api.jar冲突导致运行失败。
修改jar包范围
修改之后的范围
总结:如果使用到tomcat自带的jar包,那么必须将项目中的jar包依赖范围修改为provided,否则因为jar包冲突而报错。
5.2运行maven项目
调试运行
直接点击debug断点是进不来的,必须添加源码之后才可以,点击source,进入下面页面,进行添加源码
添加完源码之后,点击debug就可以进行调试了。
6、maven整合struts2项目
6.1 按照第五部分创建maven项目的方式创建新的maven项目。
6.2 添加struts2 的依赖
6.3在src/main/resource目录下创建struts2.xml
6.4创建action类
6.5在web.xml中配置struts2的核心过滤器
6.6在struts.xml文件配置
在webapp目录建立index.jsp文件然后按照第五部分运行就可以了。