关于Maven的好的资料:

Apache官网:http://maven.apache.org/

Apache Maven 入门篇 ( 上 ):http://www.oracle.com/technetwork/cn/community/java/apache-maven-getting-started-1-406235-zhs.html

Apache Maven 入门篇 ( 下 ):http://www.oracle.com/technetwork/cn/community/java/apache-maven-getting-started-2-405568-zhs.html

Maven教程:http://www.yiibai.com/maven/maven_environment_setup.html

孔浩Maven视频教程:http://www.icoolxue.com/album/show/45

1.在Eclipse中右键,New->Maven Project,一路Next,然后输入项目信息:

Group Id:com.maven.demo

Artifact Id:mavenDemo

Version:选择”0.0.1-SNAPSHOT“就好

package:这一栏会自动填充为 Group Id.Artifact Id的形式。不用管。

点击Finish之后,项目新建完成。其中 “src/main/java”目录包含了项目的源代码,"src/test/java"目录包含了项目的测试代码,pom.xml是项目的项目对象模型。

目录 文件
/ 存放pom.xml和所有子目录
/src/main/java 项目的源代码
/src/main/resource 项目需要用到的资源
/src/test/java 项目的测试源代码
/src/test/resource 测试需要用到的资源
/target 编译产生的文件

2.Maven采用了一种被称为project object model(POM)的概念来管理项目,所有的项目配置信息都被定义在一个叫做pom.xml的文件中。通过该文件,maven可以管理项目的整个生命周 期,包括编译、构建、测试、发布、报告等等。我们打开pom.xml文件,会看到里面的内容如下:

<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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <groupId>com.maven.demo</groupId>
<artifactId>mavenDemo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging> <name>mavenDemo</name>
<url>http://maven.apache.org</url> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties> <dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>

<project>:所有pom.xml文件中的顶层元素,申明了一些POM相关的命名空间以及xsd元素,用来约束maven的写法。

<modelVersion>:指POM使用的对象模型的版本。这个值很少改动,对于Maven2及Maven3来说,只能是4.0.0。

<groupId>:该值来源于我们创建项目时输入的”Group Id"。指明创建项目的组织或者小组的唯一标识。groupId是项目的关键标识,此标识以组织的完全限定名来定义。比 如,org.apache.maven.plugins是所有Maven插件项目指定的groupId。

<artifactId>:该值来源于我们创建项目时输入的“Artifact Id"。指明此项目产生的主要产品的基本名称。项目的主要产品通常为一个JAR文件。第二,源代码包通常使用artifactId作为最后名称的一部分。 典型的产品名称使用这个格式: <artifactId>- <version>. <extension>(比如:myapp-1.0.jar)。

<version>:该值来源于我们创建项目时选择的”Version“。表示项目产品的版本号。Maven帮助你管理版本,可以经常看到SNAPSHOT这个版本,意思是快照,表明项目处于开发阶段,是不稳定的版本。

<packaging>:指项目产生的主要产品的格式。

在POM中,groupId,artifactId,packaging,version叫做maven的坐标,它能唯一的确定一个项目。有了maven的坐标,我们也可以用来指定我们的项目所依赖的其他项目,插件,或者父项目。一般maven坐标写成如下的格式:

groupId:artifactId:packaging:version

像我们的例子就会写成:

com.mycompany.helloworld: helloworld: jar: 1.0-SNAPSHOT

我们的Maven示例很简单,但是大项目一般会分成几个子项目。在这种情况下,每个子项目就会有自己的 POM 文件,然后它们会有一个共同的父项目。这样只要构建父项目就能够构建所有的子项目了。子项目的 POM 会继承父项目的 POM。另外,所有的 POM都继承了一个 Super-POM。Super-POM 设置了一些默认值,比如默认的目录结构,默认的插件等等,它遵循了惯例优于配置的原则。所以尽管我们的这个 POM 很简单,但是这只是看得见的一部分。运行时候的 POM 要复杂的多。 如果想看到运行时候的 POM 的全部内容的话,可以运行下面的命令:

$mvn help:effective-pom

<name>:项目的显示名称,通常用于maven产生的文档中。值默认为 artifactId。

<url>:指定项目站点,通常用于maven产生的文档中。

<properties>:项目的”Properties"。对应于在项目上右键->"Properties"。里面可以配置项目采用的编码方式等等。

<dependencies>:指项目的依赖。通常由很多的<dependency>组成,这里默认只有“junit-3.8.1"。

<dependency>:一个依赖单元。意思是本项目需要依赖一个”groupId和 artifactId为junit,并且version为3.8.1“的另外一个项目,其实就是”junit-3.8.1.jar"包。实际使用中,如果 我们需要某个jar包,就会添加一个<dependency>单元,然后更新项目之后maven就会自动帮助我们下载我们需要的jar包。

下面我们通过更改pom.xml的方式来下载项目需要的包。

更改pom.xml,添加 junit4.8和testng依赖,也就是:

<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.1.1</version>
<scope>test</scope>
</dependency> <dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.8.2</version>
</dependency>

3.更新项目。在项目上右键,选择 Maven->“Update Project"。更待更新完毕,可以看到项目结构多了一个”Maven Dependencies"库。打开库即可看到我们新添加的junit 和testng包。

在Eclipse中新建Maven项目的更多相关文章

  1. Java web项目搭建系列之一 Eclipse中新建Maven项目

    前提条件: 已经安装好JDK 已经安装好Maven 已经安装好Eclipse 已经安装好Maven插件 在Eclipse中新建Maven项目 [File]→[New]→[Other...] [Mave ...

  2. eclipse中新建maven项目-转

    http://huxiaoheihei.iteye.com/blog/1766986 博客分类: maven maven  maven是个项目管理工具,集各种功能于一身,下面介绍maven web项目 ...

  3. eclipse中新建maven项目

    maven是个项目管理工具,集各种功能于一身,下面介绍maven web项目在eclipse种的配置,并于tomcat集成.配置成功后,可以跟一般的web项目一样调试. 一.准备条件 1.安装下载jd ...

  4. eclipse中新建maven项目无法添加src/main/java问题

    eclipse创建maevn web项目,在选择maven_archetype_web原型后,默认只有src/main/resources这个Source Floder. 按照maven目录结构,添加 ...

  5. Eclipse 中 新建maven项目 无法添加src/main/java 问题

    eclipse创建maven web项目,在选择maven_archetype_web原型后,默认只有src/main/resources这个Source Floder. 按照maven目录结构,添加 ...

  6. Eclipse下新建Maven项目、自动打依赖jar包

    当我们无法从本地仓库找到需要的构件的时候,就会从远程仓库下载构件至本地仓库.一般地,对于每个人来说,书房只有一个,但外面的书店有很多,类似第,对于Maven来说,每个用户只有一个本地仓库,但可以配置访 ...

  7. eclipse下新建maven项目

    eclipse下新建maven项目 1.1下载maven安装包 进入Maven官网的下载页面:http://maven.apache.org/download.cgi,如下图所示:\ 选择当前最新版本 ...

  8. 在本机eclipse中创建maven项目,查看linux中hadoop下的文件、在本机搭建hadoop环境

    注意 第一次建立maven项目时需要在联网情况下,因为他会自动下载一些东西,不然突然终止 需要手动删除断网前建立的文件 在eclipse里新建maven项目步骤 直接新建maven项目出了错      ...

  9. Eclipse 中构建 Maven 项目的完整过程 - SpringBoot 项目

    进行以下步骤的前提是你已经安装好本地maven库和eclipse中的maven插件了(有的eclipse中已经集成了maven插件) 一.Maven项目的新建 1.鼠标右键---->New--- ...

随机推荐

  1. 【原创】贴片电容的测量方法。。。这是我从自己QQ空间转过来的,本人实操!

    电容不工作一般分为3种情况,漏电.击穿.无电容.一般检测用万用表检测阻值一般调在10K-20K为测量标准,特别是贴片电容.把万用表的笔尖点在贴片电容的两侧,如下图测量: l1.jpg l2.jpg l ...

  2. 1_Linux_目录简介

    1. Linux中所以内容以文件形式保存,包括硬件,所以在用命令行配置文件时,该配置仅仅是临时生效.   2. Linux不靠扩展名区分类型,而是靠文件权限.之所以有扩展名是为了便于管理. .rpm二 ...

  3. Python之路,Day21 - 常用算法学习

    Python之路,Day21 - 常用算法学习   本节内容 算法定义 时间复杂度 空间复杂度 常用算法实例 1.算法定义 算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的 ...

  4. HUD2087

    #include<iostream> #include<cstdio> #include<cstring> #define maxn 1010 using name ...

  5. Linux sed命令删除指定行

    一.删除包含匹配字符串的行## 删除包含baidu.com的所有行sed -i '/baidu.com/d' domain.file 二.删除匹配行及后所有行## 删除匹配20160229的行及后面所 ...

  6. 全文索引--自定义chinese_lexer词典

    全文索引它的数据字典本来就是自己加密过的数据格式,只有翻译过来了,才可以修改.这样修改后再生成它自己的数据格式文件,覆盖掉原来的,就会将新添加的关键词加入进去了!! 以下操作是在Oracle服务器安装 ...

  7. Xcode快捷键 (本人总结常用的)

    以下分类显示最常用的快捷键: 1. 文件 CMD + N: 新文件 CMD + SHIFT + N:     新项目 CMD + O: 打开 CMD + S: 保存 CMD + SHIFT + S: ...

  8. tableView创建方法调用的研究

    当两个section的cell数量都为5的时候,方法的调用顺序: -[ViewController numberOfSectionsInTableView:] -[ViewController tab ...

  9. Solution(项目部署):The server does not support version 3.0 of the J2EE Web module specification

    1.错误: 在eclipse中使用run->run on server的时候,选择tomcat6会报错误:The server does not support version 3.0 of t ...

  10. php设计模式之简单工厂模式

    ①抽象基类:类中定义抽象一些方法,用以在子类中实现 ②继承自抽象基类的子类:实现基类中的抽象方法 ③工厂类:用以实例化所有相对应的子类 /** * * 定义个抽象的类,让子类去继承实现它 * */ a ...