maven properties文件里变量无法替换

来源:互联网 发布:淘宝店铺被投诉侵权 编辑:程序博客网 时间:2024/06/04 00:26

我的项目结构如下,是多模块结构
这里写图片描述

在主pom的vars里定义了各个环境的不同变量,然后在其他模块中引用,但是使用中发现,变量并没有被替换。

解决方法:
在主pom的pom.xml中加入插件:

<plugin>     <groupId>org.apache.maven.plugins</groupId>     <artifactId>maven-resources-plugin</artifactId>     <version>2.5</version>     <configuration>                                                       <useDefaultDelimiters>false</useDefaultDelimiters>               <delimiters>            <delimiter>$[*]</delimiter>        </delimiters>       <encoding>UTF-8</encoding>    </configuration></plugin>

maven-resources-plugin

为了使项目结构更为清晰,Maven区别对待Java代码文件和资源文件,maven-compiler-plugin用来编译Java代码,maven-resources-plugin则用来处理资源文件。默认的主资源文件目录是src/main/resources,很多用户会需要添加额外的资源文件目录,这个时候就可以通过配置maven-resources-plugin来实现。此外,资源文件过滤也是Maven的一大特性,你可以在资源文件中使用${propertyName}形式的Maven属性,然后配置maven-resources-plugin开启对资源文件的过滤,之后就可以针对不同环境通过命令行或者Profile传入属性的值,以实现更为灵活的构建。

了解更多maven插件

0 0