(三)《Maven实战》读书笔记 —— 手动创建Maven项目

第3章:Maven使用入门

到目前为止,已经大概了解并安装好了Maven,现在,我们开始创建一个最简单的Hello World项目。

3.1 编写POM

Maven项目的核心是pom.xml。POM(Project Object Model,项目对象模型)定义了项目的基本信息,用于描述项目如何构建,声明项目依赖等。现在先为Hello World项目编写一个简单的pom.xml。首先创建一个名为hello-world的文件夹,打开该文件夹,新建一个名为pom.xml的文件,输入下面内容。

<?xml version="1.0" encoding="UTF-8"?>
<project>
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.juvenxu.mvnbook</groupId>
	<artifactId>hello-world</artifactId>
	<version>1.0-SNAPSHOT</version>
	<name>Maven Hello World Project</name>
</project>

3.2 编写主代码

项目的主代码和项目的测试代码不同,项目的主代码会被打包到最终的构件中(如jar),而测试代码只在运行测试的时候用到,不会被打包。默认情况下,Maven假设项目主代码位于src/main/java目录,我们遵循Maven约定,创建该目录,然后在该目录下创建文件com.juvenxu.mvnbook.helloworld,将文件目录结构表示包结构,依次创建文件夹。并在该文件下创建HelloWorld.java,输入下面内容。

package com.juvenxu.mvnbook.helloworld;
public class HelloWorld{
	public String sayHello(){
		return "Hello Maven";
	}
	public static void main(String[] args){
		HelloWorld helloworld = new HelloWorld();
		String result = helloworld.sayHello();
		System.out.print(result);
	}
}

在项目根目录下运行命令 mvn clean compile

3.3 编写测试代码

为了使项目结构保持清晰,主代码于测试代码应该分别位于独立的目录中。对应地,Maven项目的默认测试代码目录是src/test/java。因此,在编写测试代码前,先创建该目录。JUnit是Java世界中事实上的单元测试标准。要使用JUnit,首先需要为Hello World项目添加一个JUnit依赖,添加如下代码于项目的POM中。

    ......
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.7</version> <scope>test</scope> </dependency> </dependencies>
    ......

配置了测试依赖,接着就可以编写测试类。在src/test/java目录下创建文件com.juvenxu.mvnbook.helloworld,将文件目录结构表示包结构,依次创建文件夹。并在该文件下创建HelloWorldTest.java,输入下面内容。

package com.juvenxu.mvnbook.helloworld;

import static org.junit.Assert.assertEquals;
import org.junit.Test;
public class HelloWorldTest{
	
	@Test
	public void testSayHello(){
		HelloWorld helloworld = new HelloWorld();  //准备测试类及数据
		String result = helloworld.sayHello();    //执行要测试的行为
		assertEquals("Hello Maven", result);     //检查测试结果
	}
}

调用Maven命令执行测试 mvn clean test

3.4 打包和运行

将项目进行编译和测试之后,下一个重要的步骤就是打包(package)。Maven的默认打包类型是jar。简单的执行命令mvn clean package进行打包。

至此,我们得到了项目的输入,如果有需要的话,就可以复制这个jar文件到其他项目的classpath中从而使用HelloWorld类。但是,如何才能让其他的Maven项目直接引用这个jar呢?还需要一个安装的步骤,执行mvn clean install

在打包之后,又执行了安装任务install。从输出可以看到该任务将项目输出的jar安装到了Maven本地仓库,可以打开相应的文件夹查看到Hello World项目的pom和jar。之前讲述JUnit的POM及jar的下载的时候,我们说只有构建下载到本地仓库后,才能由所有Maven项目使用,这里是同样的道理,只有将Hello World的构件安装到本地仓库之后,其他Maven项目才能使用它。

3.5 使用Archetype生成项目骨架

Hello World项目中有些Maven的约定:在项目的根目录中放置pom.xml,在src/main/java目录中放置项目的主代码,在src/test/java中放置项目的测试代码。我们称这些基本的目录结构和pom.xml文件内容称为项目骨架,当第一次创建项目骨架的时候, 你还会饶有兴致的去体会这些默认约定背后的思想,第二次,第三次,你也许还会满意自己的熟练程度,但第四次、第五次做同样的事情,你可能就会恼火了。为此Maven提供了Archetype帮助我们快速勾勒项目骨架。新建一个文件夹作为项目的根目录,在根目录中运行mvn archetype:generate命令,就会出现很多可用的archetype供选择,输入对应的archetype编号后回车,紧接着Maven会提示输入创建项目的groupId、artifactId、version以及包名package。

3.6 使用IDE创建Maven项目

在集成了m2eclipse的IDE中创建Maven项目,非常的简便。

首先File>>New>>Other>>Maven Project ,点击Next>>Next>>选择archetype>>Next。输入相应的GroupId、ArtfactId、Version、Package>>Finish

【END】

转载于:https://www.cnblogs.com/flyingweb/p/8479840.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值