问题描述

Springboot项目在启动时,报出了以下错误:

***************************APPLICATION FAILED TO START*************************** Description: Failed to bind properties under 'spring.datasource.type' to java.lang.Class:     Property: spring.datasource.type    Value: com.zaxxer.hikari.HikariDataSource    Origin: "spring.datasource.type" from property source "bootstrapProperties"    Reason: No converter found capable of converting from type [java.lang.String] to type [java.lang.Class] Action: Update your application's configuration

问题原因

Springboot启动时,"DataSourceAutoConfiguration"类 发现DataSource类可用时,会自动配置DataSource。而我的项目模块中,配置文件(application.yml,bootstrap.yml)中并没有任何关于数据源的配置,从而引发了该错误。

解决方案一

在启动文件中,增加排除数据源的配置,如下:

@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class,    DataSourceTransactionManagerAutoConfiguration.class,    HibernateJpaAutoConfiguration.class})public class RegistryCenterApp {    ...}

解决方案二

方案一虽能解决问题,但是总感觉不够友好,我一个无需数据源的服务,却需要显式的排除数据源,这是什么道理!并且以前好好的服务,怎么就突然需要数据源了呢?

在看了代码提交记录后发现,该服务调用了common-service模块,而common-service模块中又新增了一个 spring-data-envers 的依赖,进而引入了数据源,而由于调用模块无需数据源,也就没有相应的配置,进而引发了错误。

问题来了,为啥要增加该依赖呢?询问后得知,是因为需要引org.springframework.data.domain.Page 类,用来对jpa的结果进行分页,而这个类是在spring-data- commons 包中,后将common-service模块中的 spring-data-envers 依赖改为了 spring-data-commons 后,并将scope改为了provided后,再次编译启动,问题解决。

总结:

在多模块项目中,有时一个模块出错,并不一定是该模块的问题,还有可能是所依赖的其他模块出错,在出错分析时,也别忘分析是否是其他模块引发的错误的可能性。

eclipse启动springboot项目_多模块项目中的一个Spring Boot启动错误相关推荐

  1. iar怎么新建立项目_请简述IAR中创建一个应用项目的步骤及配置过程。

    [多选题]公路工程中应用的石灰要求达到( ). [多选题]在石灰工业废渣稳定土施工前,取有代表性石灰样品进行下列试验( ). [单选题]在沥青混合料中掺加适量消石灰粉,可以有效提高沥青混合料的( ). ...

  2. Spring Boot-Spring Tool Suit + Gradle 构建第一个Spring Boot 项目01

    文章目录 概述 使用Spring Tool Suite构建Spring Boot项目 下载STS 插件安装 搭建第一个Spring Boot项目 启动项目 概述 通常,构建一个Spring Boot项 ...

  3. eclipse创建springboot项目_创建一个 Spring Boot 项目,你会几种方法?

    我最早是 2016 年底开始写 Spring Boot 相关的博客,当时使用的版本还是 1.4.x ,文章发表在 CSDN 上,阅读量最大的一篇有 42W+,如下图: 2017 年由于种种原因,就没有 ...

  4. springboot controller访问不到_构建微服务:快速搭建Spring Boot项目

    Spring Boot简介: Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员 ...

  5. 2.vue3医疗在线问诊项目 - _登录模块 ==> 代码片段、css变量主题定制、cp-nav-bar组件封装、svg打包精灵图插件、cp-icon组件封装、表单校验、密码登录、短信验证码登录及两者

    2.医疗在线问诊项目 - _登录模块 ==> 代码片段.css变量主题定制.cp-nav-bar组件封装.svg打包精灵图插件.cp-icon组件封装.表单校验.密码登录.短信验证码登录及两者的 ...

  6. idea启动springboot卡_写给新手看的 Spring Boot 入门学习指南

    什么是 Spring Boot ? 解释一下:Spring Boot 可以构建一切.Spring Boot 设计之初就是为了最少的配置,最快的速度来启动和运行 Spring 项目.Spring Boo ...

  7. phython在file同时写入两个_喜大普奔,两个开源的 Spring Boot + Vue 前后端分离项目可以在线体验了

    折腾了一周的域名备案昨天终于搞定了. 松哥第一时间想到赶紧把微人事和 V 部落部署上去,我知道很多小伙伴已经等不及了. 1. 也曾经上过线 其实这两个项目当时刚做好的时候,我就把它们部署到服务器上了, ...

  8. java多站点项目_java-在多模块项目构建期间模块之间的Maven...

    为了清楚起见,您从多模块项目运行此命令时注意到了此行为: mvn clean test 但是您将具有相同的行为,即:无需在运行任何阶段的情况下就将模块之间的依赖关系解析并可用,而无需事先将它们安装在本 ...

  9. Spring Boot-Spring Tool Suit + Gradle 构建第一个Spring Boot 项目02

    概述 将工程托管到Github Gradle构建 为什么一个main函数就能启动web并提供这么多功能 幕后的 Spring Boot 分发器和 multipart 配置 视图解析器.静态资源以及区域 ...

最新文章

  1. Maven学习详解(13)——Maven常用命令大全与pom文件讲解
  2. Node.js建立服务、路径处理与响应
  3. 计算机专业勤学善思感悟,勤学善思作文600字
  4. 山西出台法规规范社会力量认养文物 系全国首例
  5. bzoj 4942: [Noi2017]整数
  6. Python中的线程threading.Thread()使用详解
  7. 基于Flume的美团日志收集系统(一)架构和设计
  8. 匹配IP的正则表达式
  9. php7 runkit,runkit - PHP 7 中文文档
  10. Python——OpenCV形态学处理(膨胀与腐蚀)
  11. Scapy 函数传值问题,解决多层数据获取
  12. weUI多页面切换效果
  13. 关于STM32PWM占空比的总结
  14. word论文排版,页码和页眉
  15. linux离线安装postgresql,离线安装PostgreSQL
  16. Photoshop精讲精练笔记
  17. “东数西算”工程解读
  18. 服务器IIS架设网站无法增加log文件
  19. Win8.1重装win7或win10中途无法安装
  20. 嵌入式系统基本概念(硬件篇)

热门文章

  1. 60-400-240-使用-binlog-Canal使用文档md
  2. 【Spark】扩展Spark Catalyst,打造自定义的Spark SQL引擎
  3. Spark Yarn Client模式spark.driver.host导致 Cannot assign requested address: Service ‘sparkDriver‘ failed
  4. XP系统计算机桌面图标不见,XP系统显示桌面图标消失的解决方法
  5. 远行星号java 出错_打了势力争霸之后就出错了
  6. 【完美】SpringBoot中使用注解来实现 Redis 分布式锁
  7. 一语点破Java中的静态static关键字
  8. 详解Java中的正则表达式
  9. linux下hba卡服务,在Linux下查看FC HBA卡的速率和状态
  10. kafka工作流程及文件存储机制