Maven中resources标签的使用

Maven中resources标签的使用

1. <resources>的作用
 官方解释:该元素描述了所有类路径下的资源,如与项目关联的属性文件。这些资源通常被包含在最终包中。
 简单理解:resources这个标签用来描述main包下的所有文件(包括java源文件),通过<include>或<exclude>标签
 		 可以选择性的指定最终要打包到target目录下的文件。
2. <resource>(<resources>的子标签,用于描述某些具体资源)下常用子标签
<directory>:用于指定要描述的资源的目录。
<filtering>:默认值为false,为true时表示要用pom中<properties>标签内定义的属性值对被描述资源文件中的占位符进行解析替换。
<includes>:用于指定哪些资源要被加载到最终的类路径下;
<excludes>:用于指定哪些资源不被加载到最终的类路径下;

注意:

使用了<includes>标签且有<include>子标签指定资源时,只有使用了<include>标签指定的资源才会被加载到最终的类路径下;
使用了<excludes>标签且有<exclude>子标签指定资源时,只有使用了<exclude>标签指定的资源才不会被加载到最终的类路径下;

3. 使用例子(用pom中定义的属性替换yml中的占位符)

application.yml 部分内容

spring:
  profiles:
    active: @profiles.active@

pom.xml 部分内容

<profiles>
	<profile>
		<!-- 测试环境 -->
		<id>test</id>
		<properties>
			<profiles.active>test</profiles.active>
			<maven.test.skip>true</maven.test.skip>
		</properties>
		<activation>
			<activeByDefault>true</activeByDefault>
		</activation>
	</profile>
	<profile>
		<!-- 生产环境 -->
		<id>prod</id>
		<properties>
			<profiles.active>prod</profiles.active>
			<maven.test.skip>true</maven.test.skip>
		</properties>
	</profile>
</profiles>
<build>
	<resources>
		<resource>
		<directory>src/main/resources</directory>
		<filtering>true</filtering>
		<includes>
			<include>application-${profiles.active}.yml</include>
			<include>application.yml</include>
			<include>**/*.xml</include>
		</includes>
	</resource>
	</resources>
</build>
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值