• maven实战-----读书笔记之第十四章


    第十四章 灵活的构建

    1.Maven属性:

    2.构建环境的差异

    在不同的环境中,项目的源码应该使用不同的方式进行构建,最常见的是数据库配置,

    生产环境数据库配置

    测试环境数据库配置

    我们常见的做法是,先改好了之后再去构建,但是,maven针对不同的环境生成不同的构件,为了应对环境的变化,首先需要使用maven属性将这些会发生变化的部分提取出来,连接数据库时,url,用户名,密码都有可能发生变化,因此用maven属性代替它,如下图所示:

    这里定义了四个maven属性,既然用到了maven属性,就应该在某个地方定义它,我们可以新增一个profile将其包裹起来,注意的是,他定义的四个maven属性与properties文件下的${db.username}等四个配置相同,这样才可以匹配起来如下图所示:

    这里使用了一个id为dev的profile,目的是将开发环境与其他环境区分开来,有了属性定义,配置文件中也使用了这些文件,还要做的是,maven的属性默认只会在pom文件中被解析,所以,我们需要propeties也要认识这四个属性,因此需要让maven解析资源文件的maven属性,其实是maven-resources-plugin插件要做的事情,首先我们要为资源开启过滤,在pom.xml的build添加下面几行,如下图所示:

     到这里,我们将数据库配置的变化部分提取成了maven属性,在pom的porfile中定义了这些属性的值,并且为资源目录开启了属性过滤,最后,主需要在命令行激活profile,maven就能够在构建项目的时候使用profile中的属性值替换数据库配置文件中的属性引用

    输入命令: mvn clean install -Pdev 

    针对不同环境的profile

    输入命令: mvn clean install -Pdev,-Ptest ,此时会激活dev和test这两个profile

    上面介绍了命令行激活,下面我们看看其他几种激活方式

     

    2.profile的种类

  • 相关阅读:
    log4j使用方法(一)——先跑起来再说
    umasuo—ubuntu G++的安装
    Linux使用SVN server的简单介绍
    BeanUtils中copyProperties方法的使用
    标准化安装_RHEL5.5(X64)_Oracle10gR2
    Learn How To Use Oracle Flashback
    Learn How To Use Oracle Audit
    idea导入本地的eclipse项目
    Docker 资源汇总
    Docker Dockerfile
  • 原文地址:https://www.cnblogs.com/hejj-bk/p/11423820.html
Copyright © 2020-2023  润新知