Maven常用命令与Maven聚合

来源:互联网 发布:钢结构造价软件 编辑:程序博客网 时间:2024/06/05 04:55

1,mvn -v:查看maven版本,位置,java版本、位置;

2,mvn -compile :编译maven项目.java文件,生成target文件夹,包含编译后的.class文件以及运行报告等;

3,mvn -test:运行测试;

4,mvn -package:打包项目,生成jar包,将项目主代码打包成一个名为artifactId-version的jar包,位于target输出目录中;

5,mvn clean:删除项目目录下的target文件夹;

6,mvn -install:安装jar包到本地仓库;


项目主代码(main中)和测试代码(test中)的区别:

项目主代码会被打包到最终的构件中(jar包等),而测试代码只在运行测试中使用到,不会被打包。


GroupId是项目组织的唯一标识,对应项目的包名;

ArtifactId是项目的唯一标识,对应项目名;

通常写法:

假设项目名:org.taobao.cloud

其中某一模块名:email

则GroupId:org.taobao.cloud

ArtifactId:cloud-email


Maven聚合(例如:cloud-product聚合cloud-email和cloud-search):

<groupId>com.taobao.cloud</groupId>

<artifactId>cloud-product</artifactId>

<version>1.0.0 -SNAPSHOT</version>

<packaging>pom</packaging>

<name>cloud product</name>

<modules>

<module>cloud-email</module>

<module>cloud-search</module>

<.modules>

对于非聚合模块而言,打包方式<packaging>可以为默认的jar,也可以自定义为war

对于聚合模块而言,其打包方式<packaging>的值必须为pom,否则就无法构建

聚合模块仅仅是帮助聚合其他模块构建的工具,其本身并无实际的内容,只有pom.xml

为方便用户构建项目,通常将聚合模块放在项目目录的最顶层,其他模块作为聚合模块的子目录存在,当然,也可以作为平行结构。

module是当前pom的相对目录。


0 0
原创粉丝点击