maven 打包时动态替换properties资源文件中的配置值

pom build节点下面添加resource配置:

  
             
               src/main/resources/  
               true  
                 
                   **/*.properties  
                 
             
             
               src/main/resources/  
               false  
                 
                   **/*.xml  
                 
             
    

resource的filtering属性用来表示资源文件中的占位符是否需要被替换,true为需要替换。
上面的定义是所有的.properties文件中的EL表达式占位符都会在打包时动态替换,所有的.xml文件则不会替换占位符。
接下来我们配置两个profile,一个是测试环境,一个是正式环境配置:

  
          
            dev  
              
                http://n2:9200,http://n4:9200  
              
              
                true  
              
          
  
          
            production  
              
                http://192.168.3.241:9200,http://192.168.3.242:9200  
              
          
      

我们再在src/main/resources目录下面创建一个config.properties文件,内容如下:

jest.urls=${jest.urls}

然后我们执行maven打包命令:

clean package -DskipTests -Pdev

查看对应的jar包里面的config.properties文件,可以发现占位符已经被替换成了profile dev中配置的jest.urls的值。

你可能感兴趣的:(maven 打包时动态替换properties资源文件中的配置值)