Maven学习小结(二 项目构建过程)
1.创建Maven项目
1.1 创建Maven项目的约定目录结构
1.2 编辑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>cn.test.maven</groupId>
<artifactId>Hello</artifactId>
<version>0.0.1-SNAPSHOT</version> <dependencies>
<!-- 需要依赖junit 通过 groupId+artifactId+version来查找,如果本地没有则到中央仓库下载 -->
<dependency>
<!-- 当前jar所属的命名空间 -->
<groupId>junit</groupId>
<!-- 依赖的项目模块的名称 -->
<artifactId>junit</artifactId>
<!-- 依赖的版本号 -->
<version>4.9</version>
<!-- 依赖的范围, 有 test compile privlege -->
<scope>test</scope>
</dependency>
</dependencies>
</project>
1.3创建java文件
//MavenTest1\src\main\java\cn\test\maven package cn.test.maven; public class Hello
{
public String sayHello(String name){
return "Hello "+name+" !";
}
}
1.4创建测试文件
//MavenTest1\src\test\java\cn\maven package cn.maven; import cn.test.maven.Hello;
import org.junit.Test;
import static junit.framework.Assert.*; public class HelloTest{
@Test
public void testHello(){
Hello hello =new Hello();
String results=hello.sayHello("Maven");
assertEquals("Hello Maven !",results);
}
}
2.使用Maven编译、清理、测试、打包、部署项目
2.1使用“mvn compile”编译项目,Maven会根据pom.xml中的添加的“junit”依赖到Maven仓库下载对应的jar文件。编译后生成target文件夹,和之前的一致。
2.2 使用“mvn clean”清理编译后的文件。
2.3 使用”mvn test”测试项目:

会在项目根目录下生成target文件夹,里面有classes目录和test-classes;也就是说“mvn test”是先编译再测试;

2.4使用“mvn package”打包项目

成功后在target下有Hello-0.0.1-SNAPSHOT.jar文件

2.5使用“mvn install”部署项目

部署成功后,在target下有Hello-0.0.1-SNAPSHOT.jar文件

同时,在本地仓库也有一份Hello-0.0.1-SNAPSHOT.jar文件

所以“mvn install”就是把用Maven来部署项目的
清理—>编译—>测试—>打包这几个步骤一起执行,并把创建的jar文件发布到本地Maven仓库。
3.在其他项目中使用通过Maven部署生成的jar包
3.1编辑pom.xml文件,和使用“junit”依赖一样;
<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>cn.test.maven</groupId>
<artifactId>Hello</artifactId>
<version>0.0.1-SNAPSHOT</version> <dependencies>
<!-- 需要依赖junit 通过 groupId+artifactId+version来查找,如果本地没有则到中央仓库下载 -->
<dependency>
<!-- 当前jar所属的命名空间 -->
<groupId>junit</groupId>
<!-- 依赖的项目模块的名称 -->
<artifactId>junit</artifactId>
<!-- 依赖的版本号 -->
<version>4.9</version>
<!-- 依赖的范围, 有 test compile privlege -->
<scope>test</scope>
</dependency> <dependency>
<groupId>cn.test.maven</groupId>
<artifactId>Hello</artifactId>
<version>0.0.1-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>
3.1创建java文件
//MavenTest1\src\main\java\cn\maven
package cn.maven; import cn.test.maven.Hello;
public class HelloWorld
{
public String sayHi(String name){
Hello hello=new Hello();
String str=hello.sayHello(name) + " how are you ?"+this.getMyName()+",said";
return str;
} public String getMyName(){
return "007";
}
}
创建测试文件:
//MavenTest1\src\test\java\cn\maven
package cn.maven; import cn.test.maven.Hello;
import org.junit.Test;
import static junit.framework.Assert.*; public class HelloWorldTest{
@Test
public void testHelloWorld(){
HelloWorld helloWorld =new HelloWorld();
String results=helloWorld.sayHi("Dr.Q");
assertEquals("Hello Dr.Q ! how are you ?007,said",results);
}
}
使用“mvn package”测试成功:

参考:http://www.cnblogs.com/xdp-gacl/p/4051690.html
Maven学习小结(二 项目构建过程)的更多相关文章
- 项目构建之maven篇:2.HelloWorld项目构建过程
文件结构说明: 项目构建生命周期: 清理 编译 測试 打包 执行 部署 清理与编译 hello\pom.xml POM:Project Object Model,项目对象模型 pom.xml与ant的 ...
- (转)Maven学习总结(二)——Maven项目构建过程练习
孤傲苍狼 只为成功找方法,不为失败找借口! Maven学习总结(二)——Maven项目构建过程练习 上一篇只是简单介绍了一下maven入门的一些相关知识,这一篇主要是体验一下Maven高度自动化构建项 ...
- Maven学习总结(2)——Maven项目构建过程练习
Maven学习总结(二)--Maven项目构建过程练习 上一篇只是简单介绍了一下maven入门的一些相关知识,这一篇主要是体验一下Maven高度自动化构建项目的过程 一.创建Maven项目 1.1.建 ...
- Maven学习小结(五 pom.xml详解[转])
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...
- Maven学习系列二(1-5)
Maven学习系列二(1-5) 本文转自 QuantSeven 博客,讲解精炼易懂,适合入门,链接及截图如下 http://www.cnblogs.com/quanyongan/category/47 ...
- Maven学习总结(二)——Maven项目构建过程练习
上一篇只是简单介绍了一下maven入门的一些相关知识,这一篇主要是体验一下Maven高度自动化构建项目的过程 一.创建Maven项目 1.1.建立Hello项目 1.首先建立Hello项目,同时建立M ...
- Maven学习总结(二)——Maven项目构建过程练习_转载
上一篇只是简单介绍了一下maven入门的一些相关知识,这一篇主要是体验一下Maven高度自动化构建项目的过程 一.创建Maven项目 1.1.建立Hello项目 1.首先建立Hello项目,同时建立M ...
- 转】Maven学习总结(二)——Maven项目构建过程练习
原博文出自于:http://www.cnblogs.com/xdp-gacl/p/4051690.html 感谢! 上一篇只是简单介绍了一下maven入门的一些相关知识,这一篇主要是体验一下Maven ...
- Maven学习(二)-- Maven项目构建过程练习
摘自:http://www.cnblogs.com/xdp-gacl/p/4051690.html 一.创建Maven项目 1.1.建立Hello项目 1.首先建立Hello项目,同时建立Maven约 ...
随机推荐
- 百度UEditor编辑器使用教程与使用方法
我们在做网站的时候,网站后台系统一般都会用到web编辑器,今天笔者就给大家推荐一款百度UEditor编辑器.关于这款百度UEditor编辑器官网上也有简单的教程,不过看着比较费劲,今天笔者就跟大家分享 ...
- Jquery Table 的基本操作
Jquery 操作 Html Table 是很方便的,这里对表格的基本操作进行一下简单的总结. 首先建立一个通用的表格css 和一个 表格Table: table { border-collapse: ...
- 021QTP之焦点(多思考)
一.什么是焦点: 焦点说白了就是你打开某一个程序时默认的focuse 比如我们那QTP自带的windows下的示例程序来说,启动它后焦点自动落在了agent name文本框上 二.利用Tab键检查焦点 ...
- 转:eclipse导入工程中文乱码问题
eclipse之所以会出现乱码问题是因为eclipse编辑器选择的编码规则是可变的.一般默认都是UTF-8或者GBK,当从外部导入的一个工程时,如果该工程的编码方式与eclipse中设置的编码方式不同 ...
- 陈灯WGF双缓冲绘图框架
“木丸子童屋”,专售各类儿童玩具,价格优惠,请大家多多支持:http://shop65552598.taobao.com/ WGF(windows graphic foundation)为window ...
- HW7.5
import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner i ...
- C语言的格式控制符
1. 格式控制符 格式输出printf 作用是向终端输出若干个类型任意的数据. 格式:printf (格式控制符,输出列表) 1) 格式控制符 l % ...
- localtime()方法的疑惑
在做一个时间管理的APP中遇到一些问题 windows linux mac下time.h中都有关于localtime()的定义. 它不是一个保险可靠的方法,使用的时候需要小心. 参考 http://b ...
- POJ3468--A Simple Problem with Integers(Splay Tree)
虽然有点难,但是这套题都挂了一个月了啊喂…… 网上模板好多……最后还是抄了kuangbin聚聚的,毕竟好多模板都是抄他的,比较习惯…… POJ 3468 题意:给n个数,两种操作,区间整体加一个数,或 ...
- Java 反射机制分析指南
一.JAVA是动态语言吗? 一般而言,说到动态言,都是指在程序运行时允许改变程序结构或者变量类型,从这个观点看,JAVA和C++一样,都不是动态语言. 但JAVA它却有着一个非常突出的动态相关机制:反 ...