zoukankan      html  css  js  c++  java
  • Maven过滤属性文件,替换属性值


    pom.xml

        
    1、resources: 
    resources中是定义哪些目录下的文件会被配置文件中定义的变量替换,一般我们会把项目的配置文件放在src/main/resources下,像db,bean等,里面用到的变量在打包时就会根据filter中的变量配置替换成固定值 

    图片1

    filtering=true表示src/main/resources下面的所有properties文件中的占位符都会被替换为profile中对应属性的值

    图片2

    filtering=false表示src/main/resources下面所有的xml文件中的占位符都不会被替换为profile中对应属性的值

    图片3

    filtering=true表示src/main/resources/META-INF/spring下面的spring-comm-conf.xml文件中的占位符都会被替换为profile中定义的属性值,并把该文件移到targetPath配置的路径下

    2、profiles:

    id节点为唯一的,项目打包时,需要指定

    <activation>

        <activeByDefault>true</activeByDefault>

    </activation>

    改节点设置某个profile为默认选中的

    使用maven打包命令

    mvn  clean -Dmaven.test.skip=true package -P dev

    其中 -P dev,dev就是profile中指定的id,maven profile可使用操作系统信息,jdk信息,文件是否存在,属性值等作为依据,来激活相应的profile,也可在编译阶段,通过mvn命令加参数 -PprofileId 来手工激活使用对应的profile 
    结合filter和profile,我们就可以方便的在不同环境下使用不同的配制 

    3、打包

    在执行打包命令时,maven会到src/main/resources下寻找*.properties类型的文件,将pom定义的key替换到properties文件对应的${value}。



    想要提升自己,工作中遇到的问题,更多JAVA技术相关文章,微信扫一扫关注作者公众号

  • 相关阅读:
    【题解】Atcoder ARC#76 F-Exhausted?
    【题解】SCOI2006萌萌哒
    【题解】51nod1967 路径定向
    巧克力之树 [点分治+树状数组]
    thr [树链剖分+dp]
    [bzoj4361] isn [树状数组+dp+容斥原理]
    [POI2015][bzoj4383] Pustynia [线段树优化建图+拓扑排序]
    [HNOI2015][bzoj4011] 落叶枫音 [拓扑DP]
    [Atcoder Grand Contest 006 F][AGC006F] Blackout [染色]
    [bzoj4712] 洪水 [树链剖分+线段树+dp]
  • 原文地址:https://www.cnblogs.com/onlys/p/11753684.html
Copyright © 2011-2022 走看看