考虑在配置中定义一个名为"entityManagerFactory"的 bean,mssqlserver 升级到 Spring boot 2 后



我正在尝试将spring-boot 1.5.9升级到2.0.3,但服务启动失败,出现以下错误:

***************************
APPLICATION FAILED TO START
***************************
Description:
Method mvcConversionService in org.springframework.boot.autoconfigure.web.servlet.WebMvcAutoConfiguration$EnableWebMvcConfiguration required a bean named 'entityManagerFactory' that could not be found.

Action:
Consider defining a bean named 'entityManagerFactory' in your configuration.

Process finished with exit code 1

服务在Spring boot 1.5.9中正确启动。

这里的yaml文件:

spring:
application:
name: customer-crud-application
datasource:
url: jdbc:jtds:sqlserver://localhost:1433;databaseName=db-data-dev
username: sa
password: pwd
driverClassName: net.sourceforge.jtds.jdbc.Driver
jpa:
show-sql: true
hibernate:
dialect: org.hibernate.dialect.SQLServer2012Dialect

server:
port: 8080
max-http-header-size: 65536

和grade.build

dependencies {
compile 'org.springframework.boot:spring-boot-starter-web'
compile versions.lombok
compile('net.sourceforge.jtds:jtds')
compile versions.spring_jdbc
compile versions.spring_boot_starter_data_jpa
}

该项目是用spring-boot 2.0成功构建的,我已经清理了c:\Users/{user}/.m2文件夹和intelliJ缓存。请帮忙!

我遇到了这个问题。当我查看maven构建日志时,我意识到关于的hibernate包有一个错误

"无效LOC标头(错误签名("。

我通过删除下的子目录来解决

<user-home>.m2repositoryorghibernatehibernate-core and recompiling my project.

请尝试在yaml文件、中进行以下更改

spring:
jpa:    
show-sql: true
database: MYSQL
hibernate:
ddl-auto: update
dialect:
storage_engine: innodb
datasource:
url: jdbc:mysql://localhost:3306/databasename?useSSL=false
username: user
password: password

server:
port: 9999

快乐编码..:(

添加以下部门

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>

最新更新