Maven入门01——手动编写最简单的javaMaven项目

1、编写POM.XML

首先在 D盘根目录创建文件夹:maven-test, 在此文件夹中新建一个名为pom.xml的文件,代码清单如下所示:

<?xml version="1.0"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>

  <groupId>com.xyd</groupId>
  <artifactId>MavenHello</artifactId>
  <version>1.1</version>

  <name>MavenHello</name>

</project>

  POM.XML代码说明

子元素<modelVersion>指定了当前POM模型的版本,对于Maven2和Maven3来说,它只能是4.0

<groupId>一般定义了项目属于哪个组,这个组名往往和项目所在的组织名称关联,如果在xyd公司建立的项目,就可以写成: <groupId>com.xyd</groupId>
<artifactId>定义了当前Maven项目在组中唯一的ID,在此为项目定义artifactId为MavenTest,写成 <artifactId>MavenTest</artifactId>
<version>定义了当前项目的版本,<version>1.1</version>意思是当前版本为1.0,后续可以升级新版本
<packaging>元素在此示例中可以省略。
<name>元素定义一个友好的项目名称,不是必须的,可以省略,<name>MavenTest</name>

2、编写主代码
项目主代码会被最终打包到构件中(如class文件),test测试代码只在运行测试时用到,不会被打包。

默认情况下,Maven项目主代码位于 src/main/java目录下,遵守Maven约定,在该目录下创建文件com\xyd\MavenTest\MavenTest.java

MavenTest.java代码清单如下:

package com.xyd.MavenHello;

public class MavenHello{

public String SayHello(){
  return "Hello Maven!"
}

public static void main(String[] args){
 System.out.print(new MavenHello().SayHello());
}
}//end class

 

 

因为package包名为com.xyd.MavenTest,所以MavenTest.java文件要在src/main/java路径目录下的子目录路径com\xyd\MavenTest\中,MavenTest.java文件的绝对路径为:D:\maven-test\src\main\java\com\xyd\MavenTest\MavenTest.java

代码编写完成后,使用Maven clean compile 命令进行编译

 

首先在cmd窗口中使用dos命令进入到D:\maven-hello\src\main\java目录下

 

 

 

 

执行命令:mvn clean compile

提示BUILD FAILURE (构建失败),进入的路径失败

 

 

其实Maven会自动搜索src\main\java目录下的主代码,package名和子目录嵌套路径一定要一致。

我们在cmd窗口中,重新回到pom.xml文件所在的项目根目录D:\maven-hello\,再执行命令:mvn clean compile

命令行提示构建成功。

 

 

 

 

 

 

mvn clean compile 命令的意思是先删除(clean 掉target目录及其中的构建输出内容),再重新生成target目录和构建的文件(class文件或者jar包,或者war包等)

 

查看D:\maven-hello目录下,生成了target目录,其中有构建输出class文件。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 






 

posted on 2022-08-04 17:28  袁州东东  阅读(568)  评论(0编辑  收藏  举报