Maven的本地仓库配置,与各种概念汇总(了解大概的使用)

Maven仓库概念:

 Maven主要是把其他地方的jar包下载到本地仓库,供使用。

Maven配置本地仓库:

 

 配置好这两个地方:目录创建好,修改IDEA的maven路径。使用默认路径的本地仓库就创建好了。

想要使用指定路径的maven仓库,需要配置环境变量,具体百度。

Maven的常用命令:

clean,清空package包

test,调用插件jutil执行测试类并生成测试报告(测试报告不支持中文)

package,打包成jar项目或者war项目

Maven常见的配置说明:

<!--maven坐标-->
<groupId>cn.itcast.parent</groupId>   坐标
<artifactId>itcast_parent</artifactId>   工程名
<version>1.0-SNAPSHOT</version>        版本号
<!--聚合:父工程管理子工程的发布打包(打包父工程的时候子工程也会打包)-->
<modules>
    <module>zi_01</module>
    <module>zi_02</module>
    <module>zi_03</module>
    <module>zi_test04</module>
</modules>
<!--打包模式-->
<packaging>pom</packaging>  参数:pom,war,jar
<!--Maven显示的名字-->
<name>zi_02 Maven Webapp</name>
<!--配置版本管理-->
<properties>
    <junit.version>4.13.2</junit.version>
    <mysql-connector-java.version>8.0.21</mysql-connector-java.version>
</properties>

依赖:

<dependencyManagement>   依赖管理,如果没有管理,子工程继承父工程所有依赖
<dependencies>        依赖配置

    <!--junit测试依赖-->
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>${junit.version}</version>
        <scope>test</scope>
    </dependency>

    <!--mysql依赖-->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>${mysql-connector-java.version}</version>
    </dependency>

</dependencies>
</dependencyManagement>

Maven的插件依赖继承:

依赖:

<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>3.1.0</version>
</dependency>

依赖父工程,父工程指定版本号,子工程不用写 <version>3.1.0</version>。

如果子工程需要特殊版本,需要单独指定 <version>3.1.0</version>,采用就近原则。

继承:子工程继承父工程pom.xml配置。

Maven的版本管理,依赖管理,排除依赖

依赖管理:父工程引入依赖管理,子工程只取用到的进行使用.

排除依赖:

<dependency>
  <groupId>cn.itcast.zi_03</groupId>
  <artifactId>zi_03</artifactId>
  <version>1.0-SNAPSHOT</version>

  <!---->
  <exclusions>
    <exclusion>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
    </exclusion>
  </exclusions>
</dependency>

版本管理:

<!--配置版本管理-->
<properties>
    <junit.version>4.13.2</junit.version>
    <mysql-connector-java.version>8.0.21</mysql-connector-java.version>
</properties>

Maven的聚合:

如果有1000个子工程,打包要先打父类包到maven库再打子类包到maven库,重复1000次。不合理。所以在给父类打包(install,发布版本)的时候采用聚合的方式,会将modules模块下的所有子项目都进行打包并发布。

<!--聚合:父工程管理子工程的发布打包(打包父工程的时候子工程也会打包)-->
<modules>
    <module>zi_01</module>
    <module>zi_02</module>
    <module>zi_03</module>
    <module>zi_test04</module>
</modules>


版权声明:本文为RZH_long原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。