其他的一些常用命令:
mvn site 生成项目相关信息的网站
mvn clean 清除目标目录中的生成结果,就是删除target
mvn package 依据项目生成jar文件,打包之前会进行编译,测试。
mvn install 将某个项目生成的jar包安装到本地仓库中,版本新型根据该项目的pom.xml文件的<groupId>、<artifactId>、<version>标签的值来定
mvn eclipse:eclipse 生成Eclipse项目文件及包引用定义,注意,需确保定义classpath variables:M2_REPO,指向本地maven类库目录。
上接002,可以看到已经生成了target测试一下mvn clean(第一次运行会下载少量文件)。下图为运行命令前的根目录
然后就target目录和里面的玩意就全部被删除了
将002的项目打包成一个jar包,然后新建一个新的项目测试mvn install
package util;
import model.HelloWorld;//引入刚刚打包成jar包的玩意
public class Speak {
public String sayHello(){
return new HelloWorld().sayHello();
}
}
package util ;
import org.junit.*;
import org.junit.Assert.*;
public class SpeakTest{
@Test
public void testHello(){
Assert.assertEquals("hello world",new Speak().sayHello());
}
}
在pom.xml文件里声明code的jar包
<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>util</groupId>
<artifactId>code2-util</artifactId>
<version>0.0.1-SNAPSHOT</version>
<dependencies>
<!-- 声明junit的jar包 -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.10</version>
<scope>test</scope>
</dependency>
<!-- 声明code生成的jar包 ,下面加粗红色的是code的pom.xml开头那一部分-->
<dependency>
<groupId>model</groupId>
<artifactId>code-model</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
</dependencies>
<build>
<finalName>HelloWorld</finalName>
</build>
</project>
先不运行mvn install,来编译一下code2
提示找不到model包和HelloWorld类,这是因为我们还没有导入jar包
将code目录下的项目打包成jar包,然后执行mvn install将其jar包安装到本地仓库。(首次运行mvn install会下载一些文件)
添加成功后去code2编译并运行一下
编译成功
测试成功