文档章节

加入spring-boot后导致maven的profile多环境配置失效的问题解决

狗陈
 狗陈
发布于 2016/07/13 12:10
字数 271
阅读 2.6K
收藏 2

#程序员薪资揭榜#你做程序员几年了?月薪多少?发量还在么?>>>

搞了一上午,之前项目中使用profile多环境配置完全没问题,但新项目死活不行。最后分析发现是因为引入spring-boot导致无法替换变量,然后又继续研究原因。

 

spring-boot引用方式官方推荐是使用:

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.3.6.RELEASE</version>
    </parent>

然后去看了一下对应的pom.xml文件,发现spring-boot为了保护application.yml和application.properties,修改了默认的占位符${...}为@...@,然后发现resources插件有一个配置项:

<useDefaultDelimiters>true</useDefaultDelimiters>

会使用默认的占位符,增加此配置项后就没问题了。

resource插件完整的配置:

<plugin>
                    <artifactId>maven-resources-plugin</artifactId>
                    <configuration>
                        <encoding>utf-8</encoding>
                        <useDefaultDelimiters>true</useDefaultDelimiters>
                    </configuration>
                </plugin>

 

这个问题说起来就几句话,但profile多环境配置没有生效的时候真是一头雾水。

© 著作权归作者所有

狗陈
粉丝 13
博文 73
码字总数 31862
作品 0
成都
高级程序员
私信 提问
加载中

评论(1)

w
winby
牛逼,我找了大半天了,各种方法都试过了,自己又重新建了个项目,然后构建自模块测试,配置文件参数替换没有问题,又回去看之前的父项目,看到有spring-boot然后我就盯上它了,让后找这方面的问题,果然有那就是博主写的了,问题解决了,不得不说这问题也真是让人心累,要是抛问题也好,关键都不抛问题,还是谢谢博主了
springboot maven 多环境配置 jenking构建发布配置

在后端开发中,应用程序在不同的环境可能会有不同的配置,例如数据库连接、日志级别等,开发,测试,生产每个环境可能配置都不一致。 使用Spring Boot的Profile可以实现多场景下的配置切换,方...

Elson
2018/09/05
152
2
SpringBoot2系列教程(二)maven项目包 (特别完整!)

前言:相信很多朋友都会遇到一些maven打包失败的问题,这里我把我自己再打包过程中遇到的问题都分享出来,希望能帮到大家。 本教程大概内容如下: 1. 依赖传递失效问题解决方案 注意父类继承...

fantj666
2018/03/08
0
0
【Spring Cloud】Spring Cloud之自定义@SpringCloudProfile注解实现@Profile注解的功能

一、为什么会想到定义@SpringCloudProfile这样的注解 首页提一下@Profile注解:它主要用与Spring Boot多环境配置中,指定某个类只在指定环境中生效,比如swagger的配置只允许开发和测试环境开...

osc_vnse1t2o
2019/11/12
2
0
Spring boot项目maven的profile多环境配置不自动替换变量的问题解决

Spring boot项目maven的profile多环境配置不自动替换变量的问题解决 在网上找了好久,配置都很简单,可是我的程序就是不能自动替换变量,最终单独测试,发现原来是引用spring boot parent的问题 ...

osc_k5ta3dng
2018/05/16
2
0
微服务之配置服务器切换profile

最近遇到Spring-boot的多个profile切换问题,需求是这样的:微服务中引入了Spring Cloud Config,服务启动的时候,从Config Server中读取该实例对应的配置信息。本地开发环境可能使用的profi...

aoho
2017/11/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

kafka重要概念与集群重点配置详解

重要概念 broker 一个broker就是一个kafka实例,负责接收、转发、存储消息,kafka集群就是由多个broker组成。 topic kafka的topic是一个逻辑概念,就是对消息分组、分类,便于区分处理不同业...

trayvon
40分钟前
42
0
在树莓派里搭建 Lighttpd 服务器

Lighttpd 像 Ngnix 一样,是被设计运行在低内存,低 CPU 负载的设备上,它们都非常适合在树莓派上运行。 本文将介绍如何在树莓派上运行基本配置的 Lighttpd ,以及如何与 PHP-FRM 一起使用。...

良许Linux
41分钟前
10
0
Service Mesh 高可用在企业级生产中的实践 | 线上直播回顾

Service Mesh Virtual Meetup 是 ServiceMesher 社区和 CNCF 联合主办的线上系列直播。本期为 Service Mesh Virtual Meetup#1 ,邀请了四位来自不同公司的嘉宾,从不同角度展开了 Service Me...

SOFAStack
50分钟前
37
0
word转pdf软件有哪些?word转pdf软件怎么操作?

虽说日常生活中,很多人写报告写策划都依然会使用word程序,但是严格来说,word却并非是唯一常用的办公软件,就比如说pdf,就越来越受年轻人的欢迎了,那么经常用电脑办公的你是否知道,其实...

开源86
今天
39
0
Java创建对象的过程(类实例化)

1.检查类是否被加载。 当虚拟机遇到new指令后,会先去常量池检查有没有该类的符号引用,并且检查这个类有没有进行加载、解析、初始化过,没有就先执行类加载过程。 2.为对象分配内存空间*。 ...

曦鱼violet
今天
26
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部