Maven:是一个项目管理工具,它包含了一个项目对象模型 (POM:Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑
Maven功能
1 | 1.构建 |
Maven的作用
项目的一键构建
1 | 1.项目从编译、测试、运行、打包、安装,部署整个过程都交给maven进行管理,这个过程称为构建 |
Maven的依赖管理
1 | maven工程中不直接将jar包导入到工程中,而是通过在pom.xml文件中添加所需jar包的坐标,这样就很好的避免了jar直接引入进来,在需要用到jar包的时候,只要查找pom.xml文件,再通过pom.xml文件中的坐标,到一个专门用于"存放jar包的仓库"(maven仓库)中根据坐标从而找到这些jar包,再把这些jar包拿去运行 |
Maven的下载安装
Maven的安装
点击Download
下滑找到Binary zip archive,点击apache-maven-3.6.3-bin.zip下载
Maven的安装(将下载好的Maven压缩包解压到没有特殊字符、没有中文和空格的路径下即可)
配置环境变量(如使用IDEA,不需要进行以下配置,查看以下标注的[需要执行的配置]即可)
右键点击我的电脑,点击属性
点击高级系统设置
点击环境变量(N)…
点击系统变量下的新建
在变量名中写入MAVEN_HOME,在变量值中写入Maven的存放路径(可以点击浏览目录指定Maven存放路径)
找到Path环境变量,点击编辑
点击新建,再点击浏览,选中Maven根目录下的bin目录
点击所有的确定即可完成Maven环境变量的配置
在命令提示符窗口中检查Maven是否安装成功
1 | mvn -v |
Maven仓库
Maven分类
1 | 1.本地仓库: 用来存储从远程仓库或中央仓库下载的插件和 jar 包,项目使用一些插件或 jar 包, |
配置Maven的本地仓库(需要执行的配置)
在Maven的根目录下新建repository文件夹
点击Maven根目录下的conf目录,右键使用记事本或Notepad++打开settings.xml配置文件
修改localRepository标签中的本地仓库路径
在mirrors标签中加入阿里巴巴的Maven远程仓库
1 | <!-- 阿里云镜像 --> |
Maven常用命令
清理命令
1 | mvn clean # 删除Maven项目下的target目录及内容 |
编译命令
1 | mvn compile # 将Maven项目下的src --> main --> java目录下的文件编译为class文件输出到target目录下 |
测试命令
1 | mvn test # 执行Maven项目下的src --> test --> java目录下的单元测试类 |
打包命令
1 | mvn package # 将Maven项目打包成jar包或war包 |
安装命令
1 | mvn install # 将Maven项目打包成jar包或war包发布到本地仓库 |
Maven指令的生命周期
1 | maven对项目构建过程分为三套相互独立的生命周期 |
Maven的概念模型
1 | 项目对象模型(Project Object Model): 每一个maven工程都有一个pom.xml文件,通过pom.xml文件定义项目的坐标、项目依赖、项目信息、插件目标等 |
使用IDEA开发Maven项目
打开IDEA的设置界面
找到Build, Execution, Deployment下的Build Tools下的Maven
1 | 修改Maven home directory为Maven的根目录路径 |
点击OK即可
创建Maven工程
新建项目
1 | 选择Maven工程创建项目 |
1 | 修改项目名称,点击Next,再点击Finish,等待下载完成 |
控制台打印BUILD SUCCESS
项目创建完成
补全缺失的包
1 | 点击java和resources快速将缺失的包创建 |
1 | 创建ServletDemo类,继承HttpServlet(此时报红) |
在pom.xml文件下的dependencies标签中引入相关的jar包,刷新Maven项目
1 | <dependency> |
1 | 刷新完成后,跳到创建的类中,将鼠标点到HttpServlet上,Alt + 回车导入依赖 |
在build标签中引入JDK版本、字符集编码和Tomcat,刷新Maven项目
1 | <plugins> |
重写doGet方法
1 |
|
在webapp下新建创建hello.jsp
1 | 在body中随意写入一些东西 |
在web.xml中配置访问路径
使用Maven启动Tomcat
1 | 点击项目下的Plugins,再点击tomcat7,双击运行tomcat7:run |
访问浏览器
1 | http://localhost:80/maven |
浏览器显示(只显示页面内容,这里是有谷歌插件)
Maven项目约定配置
目录 | 目的 |
---|---|
${basedir} | 存放pom.xml和所有的子目录 |
${basedir}/src/main/java | 项目的java源代码 |
${basedir}/src/main/resources | 项目的资源,比如说property文件,springmvc.xml |
${basedir}/src/test/java | 项目的测试类,比如说Junit代码 |
${basedir}/src/test/resources | 测试用的资源 |
${basedir}/src/main/webapp/WEB-INF | web应用文件目录,web项目的信息,比如存放web.xml、本地图片、jsp视图页面 |
${basedir}/target | 打包输出目录 |
${basedir}/target/classes | 编译输出目录 |
${basedir}/target/test-classes | 测试编译输出目录 |
Test.java | Maven只会自动运行符合该命名规则的测试类 |
~/.m2/repository | Maven默认的本地仓库目录位置 |
pom.xml标签大全
1 | <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 123!