Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled. Show org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'groovyMarkupConfigurer' defined in class path resource
[org/springframework/boot/autoconfigure/groovy/template/GroovyTemplateAutoConfiguration$GroovyMarkupConfiguration.class]: Invocation of init method failed; nested exception is java.lang.VerifyError: Bad method call from inside of a branch All Downloads are FREE. Search and download functionalities are using the official Maven repository.
Please wait. This can take some minutes ... Project downloadMany resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. You can buy this project and download/modify it how often you want. InformationPlease wait ... Hello guys, If you are using Spring Boot and getting errors like “Cannot determine embedded database driver class for database type NONE” or “Error creating a bean with name ‘dataSource’ defined in class path resource ataSourceAutoConfiguration” then you have come to the right place. In this article, we’ll examine different scenarios on which this
Spring Boot error comes and what you can do to solve them. The general reason for this error is Spring Boot’s auto-configuration, which is trying to automatically configure a DataSource for you but doesn’t have enough information. It is automatically trying to create an instance of DataSourceAutoConfiguration bean and it’s failing. Let’s see the stacktrace looks in general: org.springframework.beans.factory.BeanDefinitionStoreException: Factory method [public javax.sql.DataSource org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration$NonEmbeddedConfiguration.dataSource()] threw exception; nested exception is org.springframework.beans.factory.BeanCreationException: Cannot determine embedded database driver class for database type NONE. If you want an embedded database please put a supported one on the classpath.: [INFO] org.springframework.beans.factory.BeanCreationException: Cannot determine embedded database driver class for database type NONE. If you want an embedded database please put a supported one on the classpath. 1) Spring Boot Error due to Starter DependencySome of my friends and readers got this error even if they don’t need a Database. The main reason they were getting this error was because of starter dependency like some of they have included spring-boot-starter-data-jpa which then included hibernate-entitymanager.jar and they didn’t have additional things need to set that up. Sometimes including incorrect Starter POM can also solve this problem like adding spring-boot-starter-jdbc instead of spring-boot-starter-data-jpa dependency. If you know, Spring Boot auto-configuration is triggered by JAR dependencies present in the classpath and if it pulls something which you don’t need then this type of error can come. 2) Due to Missing DependencySometimes you do need a database but you forgot to include the spring.datasource.url = jdbc:mysql://localhost/test spring.datasource.driver-class-name= com.mysql.jdbc.Driver In order to solve this error, either you need to include the correct Starter POM dependency or manually add the MySQL JDBC JAR file into the classpath. If you are interested, you can see this tutorial to learn more about how to connect a Java application to a database using a MySQL database inthis tutorial. 3) Due to Missing Configuration in Application.propertiesSpring Boot is good at configuring in-memory Databases like H2, HSQLDB, Derby, etc and it can
configure them by just adding their JAR files into the You can do that by adding some properties to application.properties file with the spring.datasource prefix, as shown in following example: spring.datasource.url = jdbc:mysql://localhost/abc spring.datasource.name=testme spring.datasource.username=xxxx spring.datasource.password=xxxx spring.datasource.driver-class-name= com.mysql.jdbc.Driver spring.jpa.database=mysql spring.jpa.database-platform=org.hibernate.dialect.MySQLDialect 4) Exclude DataSourceAutoConfigurationSometimes excluding DataSourceAutoConfigution can also solve this problem, especially if you don’t need Database. This will prevent Spring Boot from automatically configuration database and there won’t be any error. You can disable auto-configuration for certain classes by using the exclude Attribute of@EnableAutoConfiguration annotation of Spring Boot as shown below:
You can even exclude more than one classes using exclude attribute with
That’s all about how to solve “Cannot determine embedded database driver class for database type NONE” or “Error creating a bean with name ‘dataSource’ defined in class path resource DataSourceAutoConfiguration” problem. In most of the cases, it is because of auto-configuration doesn’t have enough details require to configure Database but sometimes it’s also the accidental trigger of database auto-configuration which can be disabled using exclude attribute of @EnableAutoConfiguration annotation. Btw, if you want to learn Spring Boot in depth, here are some useful resources for your learning: |