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约 ...
随机推荐
- HDU 4009 Transfer water 最小树形图
分析:建一个远点,往每个点连建井的价值(单向边),其它输水线按照题意建单向边 然后以源点为根的权值最小的有向树就是答案,套最小树形图模板 #include <iostream> #incl ...
- UPC OJ 一道水题 STL
Problem C: 字符串游戏 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 10 Solved: 3 [Submit][Status][Web ...
- sun X509/X500Name异常(已解决)
appium环境搭建好后,再跑第一个脚本时遇到这个问题: Errors occurred during the build.Errors running builder 'Android Packag ...
- e2e 自动化集成测试 架构 实例 WebStorm Node.js Mocha WebDriverIO Selenium Step by step (二) 图片验证码的识别
上一篇文章讲了“e2e 自动化集成测试 架构 京东 商品搜索 实例 WebStorm Node.js Mocha WebDriverIO Selenium Step by step 一 京东 商品搜索 ...
- Java String StringBuffer StringBuilder
String 字符串常量存储在常量区,每次追加操作会创建新的对象: StringBuffer 字符串变量 线程安全 在堆上创建,每次追加操作在原对象上进行操作: 速度 StringBuffer ...
- 设计模式_Flyweight_享元模式
形象例子: 每天跟MM发短信,手指都累死了,最近买了个新手机,可以把一些常用的句子存在手机里,要用的时候,直接拿出来,在前面加上MM的名字就可以发送了,再不用一个字一个字敲了.共享的句子就是Flywe ...
- httpServer V1
package cn.edu.sss.httpServer; import java.io.BufferedReader; import java.io.IOException; import jav ...
- 简单的activemq的封装和使用
天空中飘着小雨,实在是适合写代码的时节. 1 package ch02.chat; import java.io.Serializable; import javax.jms.Connection; ...
- c语言中格式化输出函数的研究
<一>; 1.前言 在gcc编程中,我们比较经常用到的字符格式化输出函数是printf的,实际上gcc继承了c语言处理字符具有强大功能的风格,它提供了一系列的格式化输出函数,主要存在两个库 ...
- MapReduce 开发环境搭建(Eclipse\MyEclipse + Maven)
写在前面的话 可详细参考,一定得去看 HBase 开发环境搭建(Eclipse\MyEclipse + Maven) Zookeeper项目开发环境搭建(Eclipse\MyEclipse + Mav ...