Maven系列学习(2)-HelloWorld

上一节中,我们已经安装好JDK及Maven了,现在,我们开始创建一个简单的HelloWorld项目。

Maven的核心是pom.xml,所谓的POM,指的是Project Object Model,即:项目对象模型。现在我们创建pom.xml。

第一,我们创建一个名为HelloWorld的文件夹,并在该文件夹中,新建一个名为pom.xml的文件,输入内容如下:

<?xml version="1.0" encoding="UTF-8" ?>
<project>
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.learning.mvn</groupId>
	<artifactId>mvn-helloworld</artifactId>
	<version>1.0-SNAPSHOT</version>
	<name>Maven for hello world</name>
</project>

根节点下第一个元素modelVersion指定了当前POM模型的版本,在Maven2及Maven3中,只能为4.0.0。

此外,pom.xml还包含了groupId、artifactId和version,这三个元素定义了一个项目的基本坐标,在Maven中,任何jar、pom、war及plugin都是基于这些基本坐标区分的。groupId定义了项目属于哪个组,artifactId定义了当前模块在项目中的唯一ID,version是项目的版本号。

在没有写任何Java代码的情况下,我们仍可以直接在命令行运行mvn clean compile,并且不会出现任何问题。

第二,我们编写Java主代码。项目主代码都是位于根目录下的src/main/java目录。按照约定,我们创建此目录。然后我们在此目录下,再创建包及相应的Java类文件,com/learning/mvn/helloworld/HelloWorld.java。其内容下:

package com.learning.mvn.helloworld;

public class HelloWorld {
	
	public String sayHello() {
		return "hello";
	}
	
	public static void main(String[] args) {
		System.out.println(new HelloWorld().sayHello());
	}
}

我们在根路径下运行命令mvn clean compile,发现没有出现问题。


第三,我们编写测试代码,主代码和测试代码是放置在不同的目录下的。主代码是放在src/main/java下,而测试代码是放在src/test/java下。所以我们先创建测试目录,然后创建相应的包及测试Java类文件。这儿的测试,是需要jUnit的支持的,所以先在pom.xml中加入junit的依赖,然后写测试代码。依次示例如下:

<?xml version="1.0" encoding="UTF-8" ?>
<project>
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.learning.mvn</groupId>
	<artifactId>hello-world</artifactId>
	<version>1.0-SNAPSHOT</version>
	<name>Maven for hello world</name>
	
	<dependencies>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.11</version>
			<scope>test</scope>
		</dependency>
	</dependencies>
</project>

package com.learning.mvn.helloworld;

import static org.junit.Assert.assertEquals;
import org.junit.Test;

public class HelloWorldTest {
	
	@Test
	public void testSayHello() {
		HelloWorld hw = new HelloWorld();
		String result = hw.sayHello();
		assertEquals("hello", result);
	}
}
我们在根目录运行命令mvn clean test,发现也没有什么问题。


第四,我们对该项目进行打包(package)。我们知道,如果pom.xml中没有加package标签,默认是jar。所以这儿,我们直接在根目录下运行命令mvn clean package,发现在target下生成了一个符合指定格式(artifactId-version.jar)的jar文件。


至此,基本的Maven进行清理(clean)、编译(compile)、测试(test)和打包(package)已经完成。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Maven是一个项目管理工具,它可以帮助开发人员自动化构建、测试和部署项目。Maven使用一个项目对象模型(POM)文件来描述项目的结构、依赖关系和构建配置。通过定义POM文件,开发人员可以轻松地管理项目的依赖项、构建过程和发布版本等方面。 对于一个MavenHelloWorld项目,可以按照以下步骤进行创建: 1. 首先,在命令行中进入到一个合适的目录,并执行以下命令创建一个新的Maven项目: ``` mvn archetype:generate -DgroupId=com.example -DartifactId=hello-world -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false ``` 这将使用Maven的快速启动原型创建一个名为"hello-world"的项目。 2. 进入新创建的项目目录: ``` cd hello-world ``` 3. 在src/main/java目录下创建一个Java类,可以命名为App.java,并在其中编写一个简单的Hello World程序: ```java package com.example; public class App { public static void main(String[] args) { System.out.println("Hello, World!"); } } ``` 4. 编译项目并运行: ``` mvn compile mvn exec:java -Dexec.mainClass="com.example.App" ``` 这样就可以创建并运行一个简单的Maven HelloWorld项目了。通过Maven,你可以方便地管理项目的依赖项、构建和运行过程,使项目开发更加高效。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [第一个Maven项目 -- HelloWorld](https://blog.csdn.net/Arthur_Holmes/article/details/108936465)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [[maven学习笔记]第一节,认识maven,搭建maven开发环境,写第一个HelloWorld](https://blog.csdn.net/weixin_30682415/article/details/98498119)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值