maven

聚合

作用:聚合用于快速构建maven工程,一次性构建多个项目/模块。

制作方式:

         创建一个空模块,打包类型定义为pom

        定义当前模块进行构建操作时关联的其他模块名称

 <!--定义该工程用于进行构建管理-->
    <packaging>pom</packaging>

    <!--管理的工程列表-->
    <modules>
        <!--具体的工程名称-->
        <module>../ssm_controller</module>
        <module>../ssm_service</module>
        <module>../ssm_dao</module>
        <module>../ssm_pojo</module>
    </modules>

继承

作用:通过继承可以实现在子工程中沿用父工程中的配置

        *maven中的继承与java中的继承相似,在子工程中配置继承关系

制作方式:

        在子工程中声明其父工程坐标与对应的位置

 <!--定义该工程的父工程-->
    <parent>
        <groupId>com.itheima</groupId>
        <artifactId>ssm</artifactId>
        <version>1.0-SNAPSHOT</version>
        <!--填写父工程的pom文件-->
        <relativePath>../ssm/pom.xml</relativePath>
    </parent>

       在父工程中定义依赖管理

<!--声明此处进行依赖管理-->
<dependencyManagement>

        <!--具体的依赖 -->
<dependencies>

    <!--spring环境 -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>5.1.9.RELEASE</version>
      </dependency>
      
<dependencies>

<dependencyManagement>

继承依赖使用

在子工程中定义依赖关系,无需声明依赖版本,版本参照父工程中依赖的版本

<dependencies>

    <!--spring环境 -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
    </dependency>
    
</dependencies>

继承与聚合

   作用

         聚合用于快速构建项目       继承用于快速配置

   相同点:

       聚合与继承的pom.xm文件打包方式均为pom,可以将两种关系制作到同一个pom文件中

        聚合与继承均属于设计型模块,并无实际的模块内容

    不同点:

        聚合是在当前模块中配置关系,聚合可以感知到参与聚合的模块有哪些

       继承是在子模块中配置关系,父模块无法感知哪些子模块继承了自己  

 依赖继承

    定义在父工程中           使用在子工程中(无需配置version)

 

属性

     版本统一的重要性

              属性类别
                         1.自定义属性

                             2.内置属性         3. Setting属性           4. Java系统属性             5.环境变量属性

属性类别:自定义属性

 

资源配置


            
 <!--定义环境中换用的属性值-->
 <properties>
    <jdbc.url>jdbc:mysql://127.1.1.1:3306/ssm_db</jdbc.url>
  </properties>
  
  <!--配置资源文件对应的信息-->
        <resources>
            <resource>
                <directory>${project.basedir}/src/main/resources</directory>
                <filtering>true</filtering>
            </resource>
        </resources>

多环境配置

 <!--创建多环境-->
    <profiles>
        <!--定义具体的环境:生产环境-->
        <profile>
            <!--定义环境对应的唯一名称-->
            <id>pro_env</id>
            <!--定义环境中换用的属性值-->
            <properties>
                <jdbc.url>jdbc:mysql://127.1.1.1:3306/ssm_db</jdbc.url>
            </properties>
            <!--设置默认启动-->
            <activation>
                <activeByDefault>true</activeByDefault> 启动项目时默认用哪个环境
            </activation>
        </profile>
        <!--定义具体的环境:开发环境-->
        <profile>
            <id>dep_env</id>
            <properties>
                <jdbc.url>jdbc:mysql://127.2.2.2:3306/ssm_db</jdbc.url>
            </properties>
        </profile>
    </profiles>

加载指定环境       

     调用格式

         mvn 指令  -p 环境定义 id            范例   mvn install -p pro_env

私服

Nexus

 Nexus是Sonatype公司的一款maven私服产品
下载地址: https://help.sonatype.com/repomanager3/download

进入bin目录  cmd    nexus /run nexus

 

posted on   Sunshine0104  阅读(24)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示