0.什么是maven?
- 它是一个软件开发管理工具,主要管理工作是:依赖管理,项目一键构建
1.我们为什么要使用maven?
- 使用maven构建的项目不包含jar包文件,所以整个项目的体积非常小
maven工程不用手动导jar包,通过在pom.xml中定义坐标从maven仓库自动下载,方便且不易出错。
- 项目一键构建:使用maven可以快速地对项目进行编译–测试–运行–打包–安装
- maven的跨平台,可在window、linux上使用
- maven遵循规范开发有利于提高大型团队的开发效率,降低项目的维护成本,大公司都会考虑使用maven来构建项目。
2.maven的安装
- maven的下载 : http://maven.apache.org/download.cgi
- 下载后解压到一个地址,路径地址不包含地址
- maven的环境变量配置 :
将 %MAVEN_HOME%/bin 加入环境变量 path
- 测试是否成功 在命令行中 输入
mvn -v
3.maven仓库的配置 也就是当项目需要jar包的时候通过坐标去仓库寻找jar包
- 仓库的分类
- 本地仓库
- 私服(公司的仓库)
- 中央仓库
- 本地仓库的配置
- 编辑 apache-maven-3.3.9\conf 目录下settings.xml 增加节点 中间
J:\maven\mavenwarehouse
是你的本地仓库地址<localRepository>J:\maven\mavenwarehouse</localRepository>
- 编辑 apache-maven-3.3.9\conf 目录下settings.xml 增加节点 中间
- ps:什么是本地仓库? 本地仓库是由个人将常用到的jar包放入一个仓库中 已备自己在项目中使用 可从网络上下载别人配置好的jar包仓库 仓库一般很大
4.maven项目的目录规范
5.maven的常用命令
- 进入一个测试项目的目录 复制项目地址
本地的一个测试项目的项目地址 J:\ecplisework\testmaven
进入命令行 进入该目录
- complile命令 compile是maven工程的编译命令,作用是将src/main/java下的文件编译为class文件输出到target目录下
mvn compile
- test命令 : test是maven工程的测试命令,会执行src/test/java下的单元测试类。 例如我现在由一个测试的方法输出”我现在测试啦………..”
- clean 命令 :clean是maven工程的清理命令,执行 clean会删除target目录的内容。例如我现在清理掉刚才编译生成的target的目录
- package 命令 : package是maven工程的打包命令,对于java工程执行package打成jar包,对于web工程打成war包。例如我现在将这个测试项目打成war包,提示打包成功,并且位置在target目录下
6.如何使用ecplise开发maven项目
- 插件:现在的ecplise版本一般包含由maven插件,如果是低版本请按章m2e插件
- 在ecplise中添加自己的maven
- 告诉ecplise自己的本地仓库的位置 就是maven的配置文件地址
- 构建索引
- 打开maven窗口
Window—show view ——other———-maven Repositories
- 开始构建索引
- 打开maven窗口
- 在ecplise创建一个maven项目
- 选择 Maven Project
- 点击next进入下面界面
- 创建成功,但是报错,添加下面内容 手动添加WEB-INF和web.xml文件 因为一个标准的web项目必须包含这些内容
- 在src/java/main创建一个servlet,但是又报错了
- 要解决问题,就是要将servlet-api-xxx.jar包放进来,作为maven工程应当添加servlet的坐标,从而导入它的jar 直接打开helloworld工程的pom.xml文件,再添加坐标
自己生成下面代码
-
添加jar包的坐标时,还可以指定这个jar包将来的作用范围
-
注意修改 下面几个选择provided 否则在发布的时候会和tomcat提供的又jar包冲突