如何在Java中读取包含pom.xml变量的.properties文件?
解决.properties文件读取pom.xml变量的配置方法
1. 在pom.xml中定义自定义属性
直接在pom的<properties>节点下添加需要的变量:
<properties> <!-- 定义browser变量,值为chrome --> <browser>chrome</browser> <!-- 可按需添加其他自定义变量 --> </properties>
2. 配置Maven资源插件开启资源过滤
Maven默认不会自动替换.properties文件中的${}变量,需要通过maven-resources-plugin开启资源过滤,让Maven在构建时完成变量替换:
<build> <resources> <resource> <!-- 指定待处理的资源目录,常规为src/main/resources --> <directory>src/main/resources</directory> <!-- 开启过滤功能,允许替换文件中的${}格式变量 --> <filtering>true</filtering> <!-- 可选:限定仅处理.properties文件,避免影响其他资源 --> <includes> <include>*.properties</include> </includes> </resource> </resources> </build>
3. 配置文件的位置与写法
将你的.properties文件放在src/main/resources目录下,直接用${browser}引用pom中定义的变量:
# 配置文件示例 url=https://www.google.com/ browser=${browser}
4. 无需额外依赖
maven-resources-plugin是Maven的核心插件,默认已集成在Maven生命周期中,不需要额外引入依赖。
生效方式
执行Maven构建命令(如mvn clean package)后,Maven会自动将src/main/resources下.properties文件中的${browser}替换为pom里定义的chrome,并把处理后的文件复制到target/classes目录。程序读取该目录下的配置文件时,就能获取到替换后的变量值。
内容的提问来源于stack exchange,提问作者Word Place
相关产品推荐
相关产品推荐

