在propreties文件中引用另一个properties文件中的内容

转载:http://www.avajava.com/tutorials/lessons/how-do-i-filter-resources-based-on-values-from-a-properties-file.html?page=1

 
 
 
How do I filter resources based on values from a properties file?
Author: Deron Eriksson
Description: This tutorial describes how to filter resources based on properties in a file.
Tutorial created using: Windows Vista || JDK 1.6.0_04 || Eclipse Web Tools Platform 2.0.1 (Eclipse 3.3.1)

 

Page:    1 2  >

 

In another tutorial, we saw how we could filter resource files so that we could replace references to properties with the values of those properties and how this substitution takes place during the "process-resources" default lifecycle phase. We can also specify properties in a properties file and use these properties in the substitutions during the "process-resources" lifecycle phase.

For example, suppose we have the following resource file.

src/main/resources/textfile.txt

this is a test
artifact id: ${project.artifactId}
my.property: ${my.property}

The project.artifactId property value comes from the project's pom.xml, but we'd like the my.property to be specified in a properties file, such as the following:

src/main/filters/myfilter.properties

my.property=hamburger and fries

The project containing the resource file and the filter properties file are shown here:

Project structure

Here is the project's pom.xml file. It specifies to use the properties in the myfilter.properties file via the build.filters.filter value. It specifies to turn on filtering by setting build.resources.resource.filtering to true. It specifies the resource directory via the build.resources.resource.directory (this is needed since we overrid the default behavior by setting filtering to true).

pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.maventest</groupId> <artifactId>aproject</artifactId> <packaging>jar</packaging> <version>1.0-SNAPSHOT</version> <name>aproject</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> <build> <filters> <filter>src/main/filters/myfilter.properties</filter> </filters> <resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> </resource> </resources> </build> </project>



page2:

Now, I'll perform a "mvn clean process-resources" on the project.

Executing 'mvn clean process-resources' on 'aproject'

This generates the target/classes/textfile.txt file.

textfile.txt in target/classes

If we examine the contents of the textfile.txt file, we can see that it has been filtered to contain the property values. The project.artifactId value came from the pom.xml file, and the my.property value came from the myfilter.properties file.

target/classes/textfile.txt

this is a test
artifact id: aproject
my.property: hamburger and fries

转载于:https://www.cnblogs.com/kongweiteng/p/6733132.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值