maven 构建第一个HelloWorld

首先对maven配置文件 pom.xml 做个简单的介绍:

<?xml version="1.0" encoding="UTF-8"?>

<!-- 这是maven 所需要的最简文件配置 -->
<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></groupId> <!-- groupId的值就是项目的包名 -->
	<artifactId>maven01-model<artifactId> <!-- artifactId的值是模块名 -->
	<version>0.0.1SNAPSHOT<version> <!--	版本,这里为快照版本   -->
	
</project>

其中:groupId、artifactId、version 被称为Maven坐标,可用于唯一地表示某个项目。

然后是maven的文件目录结构说明:

src
	-pom.xml <!-- maven的配置文件,相关依赖配置都放在这里面 -->
	-main
		-java
			-pakacge
	-test
		-java
			-package
	resources <!-- 这里面存放的是资源文件,暂时用不到 -->

<!-- 由于我只是简单地写个HelloWorld ,所以只写了个test -->

下面,开始写第一个HelloWorld:

用记事本 或者notpaid++ 创建相应的文件夹结构,要与代码结构保持一致。

F:\moocwork\code\maven01\src\main
F:\moocwork\code\maven01\src\test
F:\moocwork\code\maven01\src\main\java\com\imooc\maven01\model
F:\moocwork\code\maven01\src\test\java\com\imooc\maven01\model

main中的代码:

package com.imooc.maven01.model;

public class HelloWorld {
	public String sayHello() {
		return "Hello World!";
	}
}		

test中的代码:

package com.imooc.maven01.model;

/** 这里用到了单元测试,所以要引用相关的包 */
import org.junit.*;
import org.junit.Assert.*;

public class HelloWorldTest {
	@Test
	public void testHello() {
		Assert.assertEquals("Hello World!",new HelloWorld().sayHello());
	}
}	

接下来对pom.xml进行配置

<?xml version="1.0" encoding="UTF-8"?>

<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.imooc.maven01</groupId>
	<artifactId>maven01-model</artifactId>
	<version>0.0.1SNAPSHOT</version>
    
	<dependencies>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.10</version>
		</dependency>
	</dependencies>
</project>

接下来进行测试:

cmd 
//进入F盘
F:
//进入到工程目录
cd F:\moocwork\code\maven01
//编译 工程
mvn compile

如果看到如下,表示编译成功:

【INFO】---------------------------------------------------------
【INFO】BUILD SUCCESS
【INFO】---------------------------------------------------------

若编译成功,则工程根目录下会多出个 target文件夹,里面存放的是.class 字节码文件

然后,运行测试用例。

// 如果此时你还在工程根目录径下的话,直接运行 否则,跳转到工程根目录下
mvn test

如果出现如下,则表示运行测试用例成功:

-------------------------------------------------------------------------------
Test set: com.imooc.maven01.model.HelloWorldTest
-------------------------------------------------------------------------------
Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.075 sec

至此,用maven管理的第一个HelloWorld 就完成了。

最后,最maven 的一些简单命令做下说明:

mvn -v  //查看maven 版本
mvn compile // 编译
mvn test // 测试
mvn package // 打包 
mvn clean // 删除 target
mvn install // 安装jar包到本地仓库中

谢谢你读完我的这篇博客,thanks.

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏落花落雨不落叶

canvas画简单电路图

61011
来自专栏C#

DotNet加密方式解析--非对称加密

    新年新气象,也希望新年可以挣大钱。不管今年年底会不会跟去年一样,满怀抱负却又壮志未酬。(不过没事,我已为各位卜上一卦,卦象显示各位都能挣钱...)...

4858
来自专栏转载gongluck的CSDN博客

cocos2dx 打灰机

#include "GamePlane.h" #include "PlaneSprite.h" #include "BulletNode.h" #include...

5426
来自专栏魂祭心

原 canvas绘制clock

4054
来自专栏pangguoming

Spring Boot集成JasperReports生成PDF文档

由于工作需要,要实现后端根据模板动态填充数据生成PDF文档,通过技术选型,使用Ireport5.6来设计模板,结合JasperReports5.6工具库来调用渲...

1.2K7
来自专栏跟着阿笨一起玩NET

c#实现打印功能

2702
来自专栏Ceph对象存储方案

Luminous版本PG 分布调优

Luminous版本开始新增的balancer模块在PG分布优化方面效果非常明显,操作也非常简便,强烈推荐各位在集群上线之前进行这一操作,能够极大的提升整个集群...

3105
来自专栏张善友的专栏

Mix 10 上的asp.net mvc 2的相关Session

Beyond File | New Company: From Cheesy Sample to Social Platform Scott Hansel...

2547
来自专栏我和未来有约会

Kit 3D 更新

Kit3D is a 3D graphics engine written for Microsoft Silverlight. Kit3D was inita...

2526
来自专栏一个爱瞎折腾的程序猿

sqlserver使用存储过程跟踪SQL

USE [master] GO /****** Object: StoredProcedure [dbo].[sp_perfworkload_trace_s...

2050

扫码关注云+社区