当前位置: 首页 > 知识库问答 >
问题:

spring yaml环境不与datasource协同工作

梁明辉
2023-03-14

我有一个application.yml可以工作,并且在连接到数据库时正在使用:

spring:
 datasource:
  driverClassName: org.postgresql.Driver
  url: jdbc:postgresql://10.100.247.112:5432/ofbizBuchhandel
  username: buchhandel
  password: buchhandel

向配置中添加环境配置文件时:

spring:
 profiles: development
 datasource:
  driverClassName: org.postgresql.Driver
  url: jdbc:postgresql://10.100.247.112:5432/ofbizBuchhandel
  username: buchhandel
  password: buchhandel

我得到了这个错误:

org.springframework.beans.factory.beanCreationException:创建名为“demo application”的bean时出错:注入autowired依赖项失败;嵌套异常为org.springframework.beans.factory.beanCreationException:无法自动连接字段:com.example.dbaccess com.example.demoapplication.dbd;嵌套异常为org.springframework.beans.factory.beanCreationException:创建名为“db access”的bean时出错:注入autowired依赖项失败;嵌套异常为org.springframework.beans.factory.beancreationexception:无法自动连接字段:org.springframework.jdbc.core.jdbctemplate com.example.dbaccess.jdbctemplate;嵌套异常为org.springframework.beans.factory.beanCreationException:创建名为“org.springframework.boot.autocigure.jdbc.DataSourceAutoConfiguration”的bean时出错:注入autowired依赖项失败;嵌套异常为org.springframework.beans.factory.beanCreationException:无法自动连接字段:private javax.sql.datasource org.springframework.boot.autocigure.jdbc.datasourceautociguration$jdbctemplateconfiguration.datasource;嵌套异常为org.springframework.beans.factory.beanCreationException:创建类路径资源[org/springframework/boot/autocigure/jdbc/datasourceautociguration$nonembeddedconfiguration.class]中定义的名为“data source”的bean时出错:通过工厂方法实例化bean失败;嵌套异常为org.springframework.beans.BeanInstantiationException:无法实例化[javax.sql.datasource]:工厂方法“data source”引发异常;嵌套异常为org.SpringFramework.Beans.Factory.BeanCreationException:无法确定数据库类型None的嵌入式数据库驱动程序类。如果您想要一个嵌入式数据库,请在类路径上放置一个受支持的数据库。

根据我对http://docs.spring.io/spring-boot/docs/current/reference/html/howto-properties-and-configuration.html#howto-change-configuration-distince-on-the-environment的理解,配置文件的设置看起来是正确的。

共有1个答案

祁飞翰
2023-03-14

正确的答案是我刚才打了个错字:(

 类似资料:
  • 我对Environment env有问题。getproperty、env无法找到本地属性,但它可以找到系统属性。我不知道这么多,我需要解决它。请帮帮我。附上我的代码及其配置。 控制器。xml: Paremeters.properties: 控制器: 在此处输入图像描述

  • 正在使用的技术堆栈: Java 8 MapStruct:1.2.0.最终Lombok:1.16.18 IDE:IntelliJ-Lombok插件已安装 最初,当我删除getter和setter并添加和注释时,遇到了一些问题,无法找到该属性,并显示: 我了解到Lombok 1.16.14或更新版本与MapStruct 1.2.0.beta1或更新版本是兼容的,并且可以协同工作,但我的版本比所需的版本

  • 要想团队协作使用Git,就需要用到Git协议。 3.1.1. Git支持的协议 首先来看看数据交换需要使用的协议。 Git提供了丰富的协议支持,包括:SSH、GIT、HTTP、HTTPS、FTP、FTPS、RSYNC及前面已经看到的本地协议等。各种不同协议的URL写法如表15-1所示。 表 15-1:Git支持的协议一览表 协议名称 语法格式 说明 SSH协议(1) ssh://[user@]ex

  • To have people successfully develop or use your package, you need to ensure that all the necessary files are checked into your source control system. Required Files The following files must be checked

  • A Zen student went up to a hot dog vendor and said: "Make me one with everything". — Joke 环境背景很重要。 如果你想对 Puppet 的配置清单在应用到生产环境之前先进行测试, 你可以使用 Puppet 的 environment 特性来做到。 这可以让你根据环境应用不同的配置清单来设置客户机。例如,你可以定

  • 问题内容: 我发现我有多个环境(例如测试和生产)是很常见的,但是我希望启动的Docker容器在两种环境中都是相同的。唯一的区别是我想使用来指定的应用程序配置。由于我有多个容器以及它们之间的依赖关系,因此我想使用docker- compose 。但是afaik我只能在文件内部指定一个(请参阅docs)。如果是这种情况,那么我需要将我的原始文件克隆到两个不同的文件(一个用于测试,一个用于产品),以指向