1,Maven规定了一套默认的项目格式:
src/main/java —— 存放项目的.java文件
src/main/resources —— 存放项目资源文件,如spring、struts2配置文件,db.properties
src/main/webapp —— 存放jsp,css,image等文件
src/test/java —— 存放所有测试.java文件,如JUnit测试类
src/test/resources —— 测试资源文件
pom.xml——主要要写的maven配置文件
target —— 项目由maven自动输出位置
2,按照下面的目录结构创建一个目录结构:
--src
-----main
----------java
-----test
----------java
--pom.xml
3,编写下面的Java类:
1)在src/main/java下添加类:
package cn.xmg.maven;
public class Hello {
<span style="white-space:pre"> </span>public String sayHello(String name){
<span style="white-space:pre"> </span>return "Hello Maven World!";
<span style="white-space:pre"> </span>}
}
2)在src/test/java下添加类:
package cn.xmg.maven;
import org.junit.Test;
import static junit.framework.Assert.*;
public class HelloTest {
<span style="white-space:pre"> </span>@Test
<span style="white-space:pre"> </span>public void testHello(){
<span style="white-space:pre"> </span>Hello hello = new Hello();
<span style="white-space:pre"> </span>String results = hello.sayHello("World");
<span style="white-space:pre"> </span>assertEquals("Hello World!",results);
<span style="white-space:pre"> </span>}
}
4,编辑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.xmg.maven</groupId>
<artifactId>Hello</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>Hello</name>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.9</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>
5,切换到项目根目录下,分别执行下列命令并观察:
1)执行 mvn compile命令
2)执行mvn clean命令
3)执行mvn clean compile命令
4)执行mvn clean test命令
5)执行mvn clean package命令
6)执行mvn clean site命令
7)执行mvn install命令
附录:
可以通过MAVEN的命令来生成Maven项目骨架:
执行命令mvn archetype:generate
可以看到有很多的archetype,每个前面有一个序号,输入序号(或者直接回车,选的就是quick-start):
一次输入需要的内容,
2,一次性生成
mvn archetype:create -DgroupId=[your group id] -DartifactId=[your archetype id] -DarchetypeArtifactId=maven-archetype-webapp
3,如果mvn archetype:generate列出内容过多,或者下载过慢,运行:
mvn archetype:generate -DarchetypeCatalog=internal
只列出系统内部有的archetype;