按照约定创建Maven项目目录
- src/main/java —— 存放项目的.java文件
- src/main/resources —— 存放项目资源文件,如spring, mybatis配置文件
- src/test/java —— 存放所有测试.java文件,如JUnit测试类
- src/test/resources —— 测试资源文件
- target —— 项目输出位置
- pom.xml
在项目Hello根目录建立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.tx.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>
创建Hello.java文件
- 在src/main/java/cn/tx/maven目录下新建文件Hello.java
package cn.tx.maven;
public class Hello {
public String sayHello(String name){
return "Hello "+name+"!";
}
}
创建HelloTest.java文件
在/src/test/java/cn/tx/maven目录下新建测试文件HelloTest.java
package cn.tx.maven;
import org.junit.Test;
import static junit.framework.Assert.*;
public class HelloTest {
@Test
public void testHello(){
Hello hello = new Hello();
String results = hello.sayHello("maven");
assertEquals("Hello maven!",results);
}
}
进行maven的项目操作
- 打开cmd命令行,进入Hello项目根目录执行 mvn compile命令,查看根目录变化
- cmd 中继续录入mvn clean命令,然后再次查看根目录变化
- cmd 中录入 mvn clean compile命令, 查看根目录变化
- cmd 中录入 mvn clean test命令,查看根目录变化
- cmd 中录入 mvn clean package命令,查看根目录变化
- cmd 中录入 mvn clean install 查看仓库会把项目安装到仓库里
Maven的第二个项目
HelloFriend
--src
-----main
----------java
----------resources
-----test
---------java
---------resources
--pom.xml
在项目HelloFriend根目录建立pom.xml
在项目HelloFriend根目录建立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.tx.maven</groupId>
<artifactId>HelloFriend</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>HelloFriend</name>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.9</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>cn.tx.maven</groupId>
<artifactId>Hello</artifactId>
<version>0.0.1-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>
创建HelloFriend.java文件
在src/main/java/cn/tx/maven目录下新建文件HelloFriend.java
package cn.tx.maven;
import cn.tx.maven.Hello;
public class HelloFriend {
public String sayHelloToFriend(String name){
Hello hello = new Hello();
String str = hello.sayHello(name)+" I am "+this.getMyName();
System.out.println(str);
return str;
}
public String getMyName(){
return "John";
}
}
创建HelloFriendTest.java文件
在/src/test/java/cn/tx/maven目录下新建测试文件HelloFriendTest.java
package cn.tx.maven;
import static junit.framework.Assert.assertEquals;
import org.junit.Test;
import cn.tx.maven.Hello;
public class HelloFriendTest {
@Test
public void tesHelloFriend(){
HelloFriend helloFriend = new HelloFriend();
String results = helloFriend.sayHelloToFriend("zhangsan");
assertEquals("Hello zhangsan! I am John",results);
}
}
测试打包HelloFriend项目
在HelloFriend目录下执行命令mvn package
系统报错提示:Could not find artifact cn.tx.maven:Hello:jar:0.0.1-SNAPSHOT,表示无法找到HelloFriend所依赖的Hello 0.0.1-SNAPSHOT.jar
故此我们需要重新构建第一个项目Hello并安装到数据仓库,在命令行Hello根目录下执行mvn clean install
对Hello项目进行清理并安装后,对HelloFriend项目再次进行打包
可以看到本次打包成功,说明HelloFriend项目已经可以加载Hello项目所打包的jar包
也可以直接使用idea打开进行打包