maven

maven相关命令介绍:
 
mvn compile --只编译main目录中的java文件
mvn test 测试
mvn package 打成jar/war
mvn install 将开发的模块 放入本地仓库,供其他模块使用 (放入的位置 是通过gav决定)
mvn clean 删除target目录(删除编译文件的目录)
 
clean: 清理删除掉.class文件打成的war/jar 包 为编译做准备
compile:编译将java文件编译程.class文件
package :将项目打成war/jar 包
install: 将打好的包放入本地仓库
部署:将打成的包  放到  服务器上准备运行。
 
maven继承:
原理:根据子工程的<parent>标签中找到父类的maven地址从而继承父类jar,具体继承哪些jar,就看子类中的dependency配置了哪些jar,子类继承父类的pom 后不需要写version 
实现步骤:
1、建立父工程的POM
<groupId>org.maven></groupId>
<artifactId>b</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging> <!--父工程打包方式必须是pom 方式-->
<properties>
      <junit.version>4.0.0</junit.version>
</properties>
<dependencyManagement> <!--父工程需要使用该标签表示继承与该标签以下的所有jar-->
    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>${junit.version}</version>
            <scope>test</scope>
    </dependency>
</dependencyManagement> 
2、子工程POM 第一步在子工程的parent 标签中设置父工程的ID 第二部指定父工程POM 文件地址。
<parent>
     <artifactId>b</artifactId>
     <relativePath>../B/pom.xml></relativePath> <!--父工程的POM文件地址-->
</parent>
 
maven聚合:
     聚合由来maven 项目只能识别本地仓库的的jar 与自身包里的jar 所以如果一个maven项目中需要另一个项目的maven 包则需要将该包install 进本地仓库,如果需要很多maven项目则需要install N次,所以由此产生了maven聚合工程,只需要install 父工程,则其他所有子工程全部install 完毕!。
     实现步骤:
 在父工程中增加
<modules>
    <module>../maven1</module>
    <module>../maven2</module>
</modules>
在真正的项目开发中:继承和聚合同时使用还会使用propertis 配置各项参数统一使用。
原文地址:https://www.cnblogs.com/lanSeGeDiao/p/10803884.html