Maven

Maven简介

1.Maven是apache的一个开源组件(项目)

2.帮助开发者管理项目、管理jar包以及jar之间的依赖关系(一个jar中要用到另一个jar中的类)

3.编译、测试、打包、管理jar

Maven中的概念

1.Pom(Project Object Model 项目对象模型)

Maven 管理的项目的根目录下都有一个 pom.xml 文件。pom.xml 文件指示 Maven 如何工作。

在 pom.xml 文件中配置项目基本信息以及项目构建信息等。比如:项目坐标、项目依赖的 jar、插件、编译选项等。

一旦在 pom.xml 文件中配置了所依赖的 jar,Maven 会自动从构件仓库中下载相应的构件。

2.项目坐标

在 Maven 中,将每个项目最终生成的文件称为 artifact(构件),它可以是 jar 文件,也可以是 war 文件。

groupId、artifactId、packaging、version 的组合被称为项目的坐标,它们形成了项目的唯一标识,Maven

通过坐标来精确定位构件。其中 groupId、artifactId、version 是必须的,且这三项的值必须唯一,packaging是可选的(默认为 jar)。

3.仓库

中央仓库全球共享,先将jar从中央仓库下载到本地仓库,然后在项目中引用本地仓库的jar.

Maven开发环境的搭建

1.前提

使用maven首先eclipse中必须要集成maven插件,没有可自己集成maven插件.

在线安装,通过Help–>Install New Software的方式,输入HTTP地址来安装,简单易操作,输入地址:http:///sites/m2e,把选项勾上,然后等待它 下载安装,完成之后重启 eclipse 即可。

注:Maven 工作时需要通过网络下载各种插件以完成任务,因此应保证网络的通畅。

2.安装、下载、解压、配置环境变量
3.将eclipse和maven服务器进行关联

接下来根据你的开发工具在开发工具中配置maven插件,我们在此使用eclipse进行开发,现在所使用的eclipse一般都有maven插件,所以不需要配置,只需要和maven服务器进行关联即可

Maven环境测试案例下载jar文件

例如下载servlet jar包

在Pom.xml文件配置jar包信息,使用maven自动下载jar包

<!--配置servlet开发环境 -->
	<dependency>
    	<groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>3.1.0</version>
        <scope>provided</scope>
    </dependency>
各个子元素功能解释:
<groupId>,<artifactId>和<version>:依赖项的基本坐标

	<type>:依赖项的 packaging 类型,默认是 jar; 

	<scope>:依赖项的作用范围,默认是 compile。各个取值及含义如下:

	compile:编译时和运行时依赖。如果你的项目最终打包为 war 包,则该依赖包会被拷贝到 war 包中的 lib 目录中。

	provided:编译项目主代码和测试代码时使用此依赖项,运行时由 jre 或 web 容器提供。如果你的项目最终打包为 war 包,则该 jar 包不会被打包。

	runtime:编译项目时不使用此依赖项,仅运行时依赖。如果你的项目最终打包为 war 包,则该 jar 包最终跟随工程打包。比如数据库驱动 jar,编译时不需要,运行时才使用。

	test:在编译测试代码及运行测试的时候依赖此 jar 包。该 jar 包不会被打包。比如 junit。

Maven项目打war包

右键pom.xml文件,选择Debug as或Run as 都行。

先选择maven clear清除上次打包的版本,Jdk版本为1.8

然后选择选择Maven install 打包

War包会自动存放在target目录中,将war包部署到服务器即可