Nacos拉取配置信息失败,@Value exception is java.lang.IlleggalArgumentException: Could not resolve placeholder

这篇具有很好参考价值的文章主要介绍了Nacos拉取配置信息失败,@Value exception is java.lang.IlleggalArgumentException: Could not resolve placeholder。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

具体报错内容如下:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userController': Injection of autowired dependencies failed; nested exception is java.lang.IllegalArgumentException: Could not resolve placeholder 'pattern.dateformat' in value "${pattern.dateformat}"

 引发此错误的代码

@Value("${pattern.dateformat}")
    public String pattern;

事实上,此问题并不是由这段代码引起,而是由于bootstrap配置信息缺失,导致找不到Nacos上的资源。我的配置信息在dev的namespace中,没有配置namespace信息导致解析时默认跑到了public中寻找,当然找不到了!找不到资源并不会像想象中报Cannot find resource的错误,而是直接报无法解析placeholder的错误。

解决方法是:在bootstrap中添加如下代码

spring:
  application:
    name: userservice
  profiles:
    active: dev #这个写你的namespace的真实名称,
                如果你的文档在public中,就不用写
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848
        namespace: 11288221-e817-4a2e-9986-015c3d5240cc
      config:
        file-extension: yaml #文件名后缀
        prefix: servername #文件名前缀,这里写你的服务名称
        namespace: 11288221-e817-4a2e-9986-015c3d5240cc #这个就是引发问题的关键,
                    不写这个就报错,他就是命名空间的ID,直接去nacos复制即可。
                    与discovery中的配置相同。若你的文件在public中,这一行就不写,
                    包括上面的discovery,也不写
        server-addr: localhost:8848

再次运行服务,过了!

补充:编写bootstrap所需要的pom依赖:文章来源地址https://www.toymoban.com/news/detail-732294.html

<dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-bootstrap</artifactId>
            <version>3.1.6</version>
        </dependency>

到了这里,关于Nacos拉取配置信息失败,@Value exception is java.lang.IlleggalArgumentException: Could not resolve placeholder的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Nacos】配置管理、微服务配置拉取、实现配置热更新、多环境配置

    🐌个人主页: 🐌 叶落闲庭 💨我的专栏:💨 c语言 数据结构 javaEE 操作系统 Redis 石可破也,而不可夺坚;丹可磨也,而不可夺赤。 在微服务搭建中,每个微服务中的业务都需要去完成数据库查询,并且服务之间还会完成相互调用,而要完成相互调用,需要将每个服务都注

    2024年01月16日
    浏览(63)
  • docker-Nacos镜像拉取配置

    1、创建日志logs目录 2、新建配置conf目录 3、添加配置文件  下面的数据修改6、7、8行  4、创建数据库(nacos_config),运行SQL语句 5、运行镜像 浏览器输入(默认都为:nacos) http://ip:8848/nacos

    2024年02月08日
    浏览(47)
  • 搭建nacos集群启动时,报错Unable to start web server; nested exception is org.springframework.boot.web.server

    最近在学习springcloud阿里巴巴的使用,单机使用nacos启动时没有问题,修改了配置之后启动报错,如下 贴出已经修改的配置文件,cluster.conf和application.properties cluster.conf如下 application.properties如下,其他不需要修改的地方没有复制进来 因为是看着视频一步一步改的,然后视频里

    2024年02月14日
    浏览(61)
  • Failed to obtain JDBC Connection;nested exception is dm.jdbc.driver.DMException:初始化SSL环境失败

    一个基于若依单体架构的多模块 Maven 项目的国产化迁移适配,由于是客户的代码,我们不用关心具体的功能实现,直接来做迁移即可。实施时,按照我们总结的整改建议调整源码,具体迁移适配过程可参考本专栏的其他文章。 组件 操作系统:麒麟V10 CPU: HUAWEI, Kunpeng 920 数据

    2023年04月25日
    浏览(57)
  • springboot+nacos配置中心获取配置失败

    配置写在boostrap.yml中,因为bootstrap.yml启动要先于application.yml 参数说明 1. 检查参数是否正确 需要注意的是namespace对应的是nacos中的命名空间的ID 并不是命名空间的名称 2.检查nacos的版本和启动方式 如果nacos的版本是2.0 启动方式是docker容器启动,那么就需要检查启动nacos的映射

    2024年02月13日
    浏览(45)
  • Nacos服务注册成功,但是服务列表看不到,配置也拉取不到问题

    spring.cloud.nacos.discovery.server-addr 和 spring.cloud.nacos.config.server-addr 配置没有问题,也ping的通,8848端口也开放了 服务也正常启动了,日志提示服务注册成功了,说明网络连接和端口号都是没有问题的: 2023-02-16 13:29:36.178 INFO 436 --- [ main] o.s.c.a.n.registry.NacosServiceRegistry : nacos regist

    2024年02月11日
    浏览(48)
  • gitlab配置使用ssh(clone)拉取项目失败的踩坑排查记录(配置了SSHkey仍然不能正常拉取代码)

    说起这个由来有一点尴尬,以前公司使用svn,使用git不多,后来由于项目管理和人员协作的需要开始使用git作为项目版本管理,以前的项目管理感觉比较混乱,所以就搭建了gitlab,gitlab-runner来作为项目管理,项目版本管理和自动化部署CICD,这样也确实提高了效率,但是呢,由

    2024年02月13日
    浏览(51)
  • nested exception is java.lang.NoClassDefFoundError

    出现这种问题,一般都是jar有问题,排查是哪个jar包,重新导入maven仓库一下就行了,有的时候需要把原来仓库里的包删掉,重新打包,有的时候要切换分支,到其他分支打包。 打包时候没有打进去,pom文件添加:

    2024年02月16日
    浏览(39)
  • SpringCloud读取Nacos配置中心报错:Could not resolve placeholder ‘xxx’ in value ‘${xxx}

    hello,我是灰小猿,一个超会写bug的程序员! 近期在写一个spring cloud Alibaba读取Nacos配置中心远程配置文件的内容时,出现了几个比较坑的bug,在此记录一下,帮大家避避坑。 我的使用场景: SpringBoot版本为2.6.0 Spring Cloud版本为2021.0.1 Spring Cloud Alibaba版本为2021.0.1.0 如果你的C

    2024年02月05日
    浏览(65)
  • 【已解决】Factory method ‘redisConnectionFactory‘ threw exception; nested exception is java.lang.

    Factory method ‘redisConnectionFactory’ threw exception; nested exception is java.lang.NoClassDefFoundError: org/apache/commons/pool2/impl/GenericObjectPoolConfig springboot整合redis报错 缺少对应依赖文件加上即可

    2024年02月06日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包