欢迎光临
我们一直在努力

Maven入门初级教程

maven“专家内行”的意思,是Apache下的一个纯java开发的开源项目,是一个项目管理工具(eclipse是一个项目开发工具),对Java项目进行构建、依赖管理。

项目构建

传统的项目构建过程

Maven入门初级教程

构建构成如下:

1、  在eclipse中创建一个Java web工程

2、  在工程中编写源代码及配置文件等

3、  对源码进行编译,Java文件编译成.class文件

4、  执行Junit单元测试

5、  将工程打成war包部署至Tomcat运行

 

maven的项目构建过程

 Maven入门初级教程

清理阶段对应的maven命令是clean,清理输出的 class文件

编译阶段对应的maven命令是compile,将Java代码编译成class文件

打包阶段对应的maven命令是package,Java工程可以打成jar包,web包可以打成war包

运行一个maven工程(web工程)的命令是tomat:run

依赖管理

依赖管理就是对项目所有依赖的jar包进行规范化管理,maven项目所依赖的jar包不需要手动向工程添加jar包,只需要在pom.xml(maven工程的配置文件)添加jar包的坐标,自动从maven仓库中下载jar包、运行。可避免jar包版本的冲突,方便且不易出错,maven支持跨平台,可在window、linux上使用。

 

Maven入门初级教程

 

 

其实就是对jar 包的管理并给出坐标的过程。

 

Maven的下载安装

Maven入门初级教程

 

 Maven入门初级教程

(或者输入网址http://amven.apache.org/download.cgi)

 Maven入门初级教程

Maven入门初级教程

解压缩(将maven解压到一个不含有中文和空格的目录中)

Maven入门初级教程

配置maven环境变量(须先将JAVA_HOME配置好)

 

配置 MAVEN_HOME,变量值就是你的maven安装的路径(bin目录之前一级目录)

 Maven入门初级教程

将 \bin 加入环境变量 path

Maven入门初级教程

配好变量之后通过mvn -v命令检查maven是否安装成功,看到maven的版本为3.6.0及jdk版本为1.8.0即为安装成功

Maven入门初级教程

maven仓库

Maven的工作需要从仓库下载一些jar包,maven的仓库有(本地仓库,私服,中央仓库)

Maven入门初级教程

 

本地仓库:本地存放jar包的目录。

 

私服:私人搭建的服务器。一般在企业内部局域网中使用。

 

中央仓库:maven内置了一个远程仓库的地址,它就是中央仓库

 

Maven在查找jar的时遵循什么样的顺序呢?

1)         优先查找本地

2)         本地找不到,则从私服上查找,找到后下载到本地仓库

3)         私服上找不到,则从中央仓库查找,找到后下载到私服,最后下载到本地仓库

 

中央仓库网址:     http://repo1.maven.org/maven2/

 

本地仓库配置:打开maven安装路径下\conf\settings.xml文件,加入如<localRepository>节点

 

 Maven入门初级教程

 

项目工程的标准目录结构

 Maven入门初级教程

Maven入门初级教程

 

Maven命令

1.clean

clean是maven工程的清理命令,执行 clean会删除target目录及其目录下所有内容

2.Compile

compile是maven工程的编译命令,作用是将src/main/java下的java源文件编译为class文件并输出到target下的classes目录下。

cmd进入命令状态,执行mvn compile

查看 target目录classes下,class文件已生成,编译完成

3.test

test是maven工程的测试命令 mvn test,会执行src/test/java下的单元测试类。

cmd执行mvn test执行src/test/java下单元测试类

4.package

package是maven工程的打包命令, 对于java工程执行package打成jar包,对于web工程打成war包

工程目录下执行 mvn package

 

5.Install

install是maven工程的安装命令,执行install将maven打成jar包或war包发布到本地仓库

当后面的命令执行时,前面的操作过程也都会自动执行

三套生命周期

Clean Lifecycle: 在进行真正的构建之前进行一些清理工作。

Default Lifecycle: 构建的核心部分:编译、测试、打包、部署等等。

Site Lifecycle: 生成项目报告、站点、发布站点。

Maven对项目构建过程分为三套相互独立的生命周期,每一个阶段都有一个对应的命令,且有相应的插件来支持命令的运行。

注:属于同一个指令周期内的指令,当后面的命令执行时,前面的命令会自动执行。

使用eclipse配置maven

配置maven插件

Window->Preferences

Maven入门初级教程

Maven入门初级教程

Eclipae中配置仓库位置

Maven入门初级教程

Maven入门初级教程

构建索引

Windows->Show view->other

Maven入门初级教程

Maven入门初级教程

右击最下面的那个红色框标记的,然后点击Rebuild Index

Maven入门初级教程

成功可看到仓库能展开

如何使用eclipse开发maven项目

1.创建maven工程helloworld

Maven入门初级教程

Maven入门初级教程

 

Maven入门初级教程

 

 Maven入门初级教程

Maven入门初级教程

生成web项目结构: WEB-INF目录和web.xml,如果eclipse没有Jave EE Tools,可以手式创建

Maven入门初级教程

创建HelloServlet

在src/java/main创建了一个HelloServlet,但报错

Maven入门初级教程

要解决问题,就是要将servlet-api-xxx.jar包放进来,作为maven工程应当添加servlet的坐标,从而导入它的jar

直接打开helloworld工程的pom.xml文件,再添加坐标

Maven入门初级教程

 

保存后查看pom.xml,如下:

Maven入门初级教程

修改HelloServlet的doGet方法,加入:

Maven入门初级教程

添加index.jsp页面

Maven入门初级教程

在web.xml中配置servlet

Maven入门初级教程

Eclipse下使用maven命令

Clean、compile、test、package、install

Maven入门初级教程

编译命令:compile 编译后.class文件在tar/get 下(这个命令只会对Java源程序编译,不会编译测试代码,编译测试类mvn test-compile,变异后.class文件在target\test-calsses)

测试命令 mvn test   执行所有测试用例方法,重新编译

清除命令 mvn  clean  清除target目录(清除所有编译结果或者打包结果)清理后编译

打包命令  mvn package  Java项目生成jar包,web项目生成war包,默认生成jar包名称:artifactId-version.jar

安装命令  mvn install 将工程打包后发布到本地仓库

Pom基本配置

Pom.xml是maven项目的核心配置文件,位于每个工程的根目录,基本配置如下:

<project>: 文件的根节点

<modelversion>: pom.xml使用的对象模型版本

<grounpId>: 项目名称,一般写项目的域名

<artifactId>: 模块名称,子项目名或模块名称

<version>: 产品的版本号

<packaging>: 打包类型,一般有jar、war、pom等

<name>: 项目的显示名,长哟用于maven生成的文档

<description>: 项目描述,常用于maven生成的文档

<dependencies>: 项目依赖构建配置,额皮质项目依赖构件的坐标

<build>: 项目构建配置,配置编译、运行插件等

 

---恢复内容结束---

---恢复内容结束---

  • 海报
海报图正在生成中...
赞(0) 打赏
声明:
1、本博客不从事任何主机及服务器租赁业务,不参与任何交易,也绝非中介。博客内容仅记录博主个人感兴趣的服务器测评结果及一些服务器相关的优惠活动,信息均摘自网络或来自服务商主动提供;所以对本博客提及的内容不作直接、间接、法定、约定的保证,博客内容也不具备任何参考价值及引导作用,访问者需自行甄别。
2、访问本博客请务必遵守有关互联网的相关法律、规定与规则;不能利用本博客所提及的内容从事任何违法、违规操作;否则造成的一切后果由访问者自行承担。
3、未成年人及不能独立承担法律责任的个人及群体请勿访问本博客。
4、一旦您访问本博客,即表示您已经知晓并接受了以上声明通告。
文章名称:《Maven入门初级教程》
文章链接:https://www.456zj.com/38450.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址