从春季休息开始时,我遇到了以下错误
> org.springframework.beans.factory.BeanCreationException: Error
> creating bean with name 'jpaMappingContext': Invocation of init method
> failed; nested exception is java.lang.IllegalArgumentException: At
> least one JPA metamodel must be present!
> at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1595)
> ~[spring-beans-5.0.0.BUILD-SNAPSHOT.jar:5.0.0.BUILD-SNAPSHOT]
> at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:566)
> ~[spring-beans-5.0.0.BUILD-SNAPSHOT.jar:5.0.0.BUILD-SNAPSHOT]
> at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
> ~[spring-beans-5.0.0.BUILD-SNAPSHOT.jar:5.0.0.BUILD-SNAPSHOT]
> at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:304)
> ~[spring-beans-5.0.0.BUILD-SNAPSHOT.jar:5.0.0.BUILD-SNAPSHOT]
> at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
> ~[spring-beans-5.0.0.BUILD-SNAPSHOT.jar:5.0.0.BUILD-SNAPSHOT]
> at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:300)
> ~[spring-beans-5.0.0.BUILD-SNAPSHOT.jar:5.0.0.BUILD-SNAPSHOT]
> at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:195)
> ~[spring-beans-5.0.0.BUILD-SNAPSHOT.jar:5.0.0.BUILD-SNAPSHOT]
> at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:725)
> ~[spring-beans-5.0.0.BUILD-SNAPSHOT.jar:5.0.0.BUILD-SNAPSHOT]
> at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:866)
> ~[spring-context-5.0.0.BUILD-SNAPSHOT.jar:5.0.0.BUILD-SNAPSHOT]
> at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:542)
> ~[spring-context-5.0.0.BUILD-SNAPSHOT.jar:5.0.0.BUILD-SNAPSHOT]
> at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122)
> ~[spring-boot-2.0.0.BUILD-SNAPSHOT.jar:2.0.0.BUILD-SNAPSHOT]
> at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:736)
> [spring-boot-2.0.0.BUILD-SNAPSHOT.jar:2.0.0.BUILD-SNAPSHOT]
> at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:369)
> [spring-boot-2.0.0.BUILD-SNAPSHOT.jar:2.0.0.BUILD-SNAPSHOT]
> at org.springframework.boot.SpringApplication.run(SpringApplication.java:313)
> [spring-boot-2.0.0.BUILD-SNAPSHOT.jar:2.0.0.BUILD-SNAPSHOT]
> at org.springframework.boot.SpringApplication.run(SpringApplication.java:1161)
> [spring-boot-2.0.0.BUILD-SNAPSHOT.jar:2.0.0.BUILD-SNAPSHOT]
> at org.springframework.boot.SpringApplication.run(SpringApplication.java:1150)
> [spring-boot-2.0.0.BUILD-SNAPSHOT.jar:2.0.0.BUILD-SNAPSHOT]
> at com.java.app.QuickPollApplication.main(QuickPollApplication.java:14)
> [classes/:na]
> Caused by: java.lang.IllegalArgumentException: At least one JPA metamodel must be present!
> at org.springframework.util.Assert.notEmpty(Assert.java:438) ~[spring-core-5.0.0.BUILD-SNAPSHOT.jar:5.0.0.BUILD-SNAPSHOT]
> at org.springframework.data.jpa.mapping.JpaMetamodelMappingContext.<init>(JpaMetamodelMappingContext.java:52)
> ~[spring-data-jpa-1.11.0.BUILD-SNAPSHOT.jar:na]
> at org.springframework.data.jpa.repository.config.JpaMetamodelMappingContextFactoryBean.createInstance(JpaMetamodelMappingContextFactoryBean.java:71)
> ~[spring-data-jpa-1.11.0.BUILD-SNAPSHOT.jar:na]
> at org.springframework.data.jpa.repository.config.JpaMetamodelMappingContextFactoryBean.createInstance(JpaMetamodelMappingContextFactoryBean.java:26)
> ~[spring-data-jpa-1.11.0.BUILD-SNAPSHOT.jar:na]
> at org.springframework.beans.factory.config.AbstractFactoryBean.afterPropertiesSet(AbstractFactoryBean.java:134)
> ~[spring-beans-5.0.0.BUILD-SNAPSHOT.jar:5.0.0.BUILD-SNAPSHOT]
> at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1654)
> ~[spring-beans-5.0.0.BUILD-SNAPSHOT.jar:5.0.0.BUILD-SNAPSHOT]
> at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1591)
> ~[spring-beans-5.0.0.BUILD-SNAPSHOT.jar:5.0.0.BUILD-SNAPSHOT]
> ... 16 common frames omitted
使用以下代码
@SpringBootApplication
@RestController
public class QuickPollApplication {
public static void main(String[] args) {
SpringApplication.run(QuickPollApplication.class, args);
}
@RequestMapping(value = "/test", method = RequestMethod.GET)
public String testRest() {
return "rest tested";
}
以下是我的 pom.xml
UTF-8 UTF-8 1.8 org.springframework.boot spring-boot-starter-data-jpa org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-web-services org.hsqldb hsqldb 运行时 org.springframework.boot spring-boot-starter-test 测试 org.springframework spring-web org.springframework.boot spring-boot-maven-plugin spring-snapshots Spring Snapshots https://repo.spring.io/snapshot true spring-milestones 春季里程碑 https://repo.spring.io/milestone false spring-snapshots 春季快照 https://repo.spring.io/snapshot true spring-milestones 春季里程碑 https://repo.spring.io/milestone错误的
请帮我。我不知道如何解决这个错误
原文由 user_xyz.LOL 发布,翻译遵循 CC BY-SA 4.0 许可协议
您已添加
在你的 pom.xml 中。
Spring boot 将尝试自动为 JPA 创建一个实体工厂,但您没有定义任何关于 JPA 模型的内容。
尝试删除它以测试您到目前为止做了什么。
之后你可以像 这个人 一样使用 spring-data-starter-jpa 查看教程