综合技术 --maven

这里能够很是详细的了解maven,本人已经完整读过一次,值得推荐html

http://www.yiibai.com/maven/ java


1. Maven的概念
apache

Maven是一个项目管理和综合工具。它提供给开发人员构建一个完整的生命周期框架,它使用标准的目录结构和默认的生命周期。oracle

2. Maven默认项目结构app

Maven提供一个合理的默认配置,开发人员建立一个Maven项目时,必须使用Maven默认的项目结构。开发者只须要将相应的文件放到Maven默认项目结构目录下便可,同时须要在pom.xml中定义相关配置。
框架

maven默认目录结构eclipse

假设${baseDir}表示项目位置,则maven的默认目录结构以下yii

item                    默认maven

source code        ${baseDir}/src/main/java工具

resources           ${baseDir}/src/main/resources

tests                  ${baseDir}/target/classes

complied byte code          ${baseDir}/src/test     

distributable JAR   ${baseDir}/target

3. Maven环境配置

maven是基于java的工具,因此要求必须安装有JDK。

3.1 安装jdk,设置环境变量,网上教程不少

验证java jdk是否安装成功,打开控制台,输入 java -version,以下图表示安装成功

3.2 安装maven,设置环境变量,网上教程不少

maven能够从官网 http://maven.apache.org/download.htmll 直接下载

验证maven安装成功,打开控制台,输入 mvn -version,以下图表示安装成功

4. maven pom

pom表示项目对象模型,它是maven的基本单位,是一个xml文件。

它包含了项目使用maven来构建该项目和各类配置的详细信息。

建立一个pom以前,咱们应该先肯定项目组Id(groupId)、项目名字(artifactId)、项目版本(version)等信息,这些属性在仓库中能够惟一标识该项目。

例子:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.readygo</groupId>
  <artifactId>ZBSW</artifactId>
  <packaging>war</packaging>
  <version>0.0.1-SNAPSHOT</version>
  <name>ZBSW Maven Webapp</name>
  <url>http://maven.apache.org</url>
</project>

全部的pom文件要求项目元素必须有三个字段groupId、artifactId和version。以下:

<!-- oracle -->
	<dependency>
		<groupId>com.oracle</groupId>
		<artifactId>ojdbc6</artifactId>
		<version>11.1.0.7.0</version>
	</dependency>
	
	<!-- commons-fileupload -->
	<dependency>
		<groupId>commons-fileupload</groupId>
		<artifactId>commons-fileupload</artifactId>
		<version>1.3.1</version>
        </dependency>

5. maven构建配置文件

生成配置文件能够用来设置或覆盖maven构建配置值的默认值。

默认的配置文件有三个

文件名称                         描述

env.properties                default configuration used if no profile is mentioned.

env.test.properties         test configuration when test profile is used.

env.prod.properties       production configuration when prod profile is used.

显示激活配置文件

<dependency>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-resources-plugin</artifactId>
    <version>2.5</version>
</dependency>

经过maven设置激活配置文件

打开maven的settings.xml文件能够在%user_home%, .m2目录表示用户的主目录。经过在settings.xml文件中激活配置文件。

6. maven资源库

maven资源库是存放项目中全部jar包的地方,maven库有三种类型:

local

central

remote

本地库

maven本地库是每一个人本身计算机上的某个文件夹,当该maven项目第一次运行时,被建立。

当运行maven项目时,它会将该项目全部的依赖jar包都下载到本地。

maven本地存储库默认状况是建立在%user_home%目录,若是须要覆盖默认位置,则能够修改settings.xml文件,以下图

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 
   http://maven.apache.org/xsd/settings-1.0.0.xsd">
      <localRepository>C:/MyLocalRepository</localRepository>
</settings>

中央存储库

maven的中央存储库是由maven社区提供的资源库,当maven在本地库没有找到依赖包,则自动去中央存储库查找。

远程仓库

这是开发商自定义的库,须要该库的用户能够设置本身的maven项目链接到远程仓库。

maven的依赖搜索序列

当咱们执行maven构建命令时,maven的依赖库按照如下顺序开始寻找:

1> 搜索本地资源库,若是没找到到第二步

2>搜索中央存储库,若是没找到,要么报错、要么去第三步(若是设置了远程仓库)

3>若是没找到,则抛出异常(找不到依赖包)。

7. maven插件

maven其实是一个插件框架,每个任务都是由插件完成的。

8. myeclipse下建立maven项目

网上例子不少

9. 运行maven命令

在myeclipse中建立好maven项目后,右键-->run as-->maven build。

相关文章
相关标签/搜索