zoukankan      html  css  js  c++  java
  • maven之---资源过滤 在java/main/resourse/*.xml ,*.properties引用maven属性${db.username}

    本文主要来源maven实战14.3

    为了应对环境的变化,首先使用Maven属性将这个会发生变化的部分提取出来.在上一节的数据库配置中,连接数据库使用的驱动类,URL,用户名和密码都可能发生变化,因此使用Maven属性取代他们:

    database.jdbc.driverClass=${db.driver}
    database.jdbc.connectionURL=${db.url}
    database.jdbc.username=${db.username}
    database.jdbc.password=${db.password}
    

    z放到src/main/resources/*.properites

    既然使用了Maven属性,就应该在某个地方定义他们.用一个额外的profile将maven属性包裹其中,代码如下


    <profiles>
        <profile>
            <id>dev</id>
            <properties>
                <db.driver>com.mysql.jdbc.Driver</db.driver>
                <db.url>jdbc:mysql://192.168.1.100:3306/test</db.url>
                <db.username>dev</db.username>
                <db.passeord>dev-pwd</db.password>
            </properties>
        </profile>
    </profiles>
    

      代码中的Maven属性定义与直接在POM的properties元素下定义并无二致,这里只是使用了一个id为dev的profile,其目的是将开发环境下的配置与其他环境区别开来.关于profile,本章将详细解释

      有了属性定义,配置文件中也使用了这些属性,一切就OK了吗>还不行.要留意的是Maven属性默认只有在POM中才会被解析,也就是说,${db.username}放到POM中会变成test,但是如果放到src/main/resources/目录下的文件中,构建的时候他讲仍然还是${db.usrname}.因此,需要让Maven解析资源文件(resources目录)中的Maven属性.

      资源文件的处理其实是maven-resources-plugin做的事情,它的默认行为只是将项主资源文件复制到主代码编译输出目录中,不过只要通过一些简单的POM配置,该插件就能够解析资源文件中的Maven属性,即开启资源过滤,只要在此基础上添加乙方filtering配置即可,代码如下:


    <resources>
        <resource>
            <directory>${project.basedir}/sr/main/resources<directory>
            <filtering>true</filtering>
        </resource>
    <resources>
    

      目前一切就绪,在POM的profile中定义了这些属性的值,并且为资源目录开启了属性过滤.最后,只要在命令行激活profile,Maven就能在构建项目的时候使用profile中属性值替换数据库配置文件中的属性引用.命令如下

    mvn clean install -Pdev

      

  • 相关阅读:
    xps插入图片
    xps文件的基本操作
    大家注意:升级 win8.1 火狐浏览器 谷歌浏览器 搜狗五笔输入法 都不能用啦
    CF4C_Registration system 题解
    CF1B_Spreadsheets 题解
    CSP-J/S 初赛知识点整理
    Nodejs在centos下的安装
    sqlserver2012 表分区
    adb unknown host service 这个问题的解决,转载
    char和nchar,varchar和nvarchar的区别(转载)
  • 原文地址:https://www.cnblogs.com/zytcomeon/p/14142675.html
Copyright © 2011-2022 走看看