【SpringBoot 分模块开发注值失败问题】

问题出现

在Spring Boot分模块开发时。当天 @Value 注值正常注入。而在第二天时运行项目突然报 @Value 注值失败。通过查找大量文献后,并查看打包后的 jar 包还是没有发现问题是如何生成的。

解决方案流程

  1. static 属性注值方式
    去掉属性前 static,或者在 setXXX() 方法上注值
  2. 注值类上加 @Component 注解,并加上@ConfigurationProperties(prefix = “application-common.yml”)
  3. 项目是分模块开发,启动类模块中 yml 文件应导入注值类中的 yml 文件
  4. 以上解决方案若还是没有解决的话。
    4.1. 删除 maven 本地仓库中 jar 包,重新下载。(有可能 maven 本地仓库中 jar 丢失),若还是未解决
    4.2. 重构项目。(可能项目构架一些包丢失。可以 100% 解决问题)

详解

static 注值

	// 方案一
   @Value("${wx.app-id}")
   private String appId;
   
   // 方案二
   @Value("${wx.app-id}")
   public void setWxAppId(String appId) {
   		appId = appId;
   }

@ConfigurationProperties(prefix = "application-common.yml")
@Component("MicroAppUtil")
public class MicroAppUtil {
	
}

yml 文件配置

spring:
  profiles:
    #引用application-common.yml文件
    active: common
    include: common
  application:
    name: tianyutong-system #指定服务名

重构本地仓库中 maven 的 jar 包 (若未解决)

重构项目 (100% 解决)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值