我刚刚开始使用***Sping Boot *,目前正在遵循this tutorial,对命名和使用他们自己的Eclipse
**版本进行了一些小修改,该版本内置了this generator。
当我看到第一段代码时,我尝试从 import 语句开始复制,
import com.fasterxml.jackson.annotation.JsonIgnore;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import java.util.HashSet;
import java.util.Set;
这会导致javax导入出现以下错误:
The import javax.persistence.[insert name here] cannot be resolved
当我找到**javax.persistence
**软件包时,我发现他们自己的服务提供的启动器代码不包含列出的软件包。我感到困惑,不知道我是否在最初的步骤中做错了什么。有人有什么想法吗?
编辑1:提供pom内容
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.Me</groupId>
<artifactId>petstore</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>petstore</name>
<description>Petstore Project</description>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.3.5.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
6条答案
按热度按时间wfveoks01#
添加**
spring-boot-starter-data-jpa
相关性如果您使用的是
Maven
,请添加到pom.xml**如果您使用的是**
Gradle
,请添加build.gradle**其它参考this。
pepwfjgg2#
也许这会对某些人有所帮助:显然,Java持久性API被重命名为Jakarta持久性。因此,您必须导入Jakarta持久性,而不是javax.persistence。
gab6jxml3#
请参阅文档https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.3-Release-Notes
从#19550开始,Web和WebFlux启动器默认不再依赖于验证启动器。如果您的应用程序正在使用验证特性,例如您发现javax.validation.* 导入没有被解析,您需要自己添加启动器。
对于Maven构建,您可以通过以下方式来完成此操作:
对于Gradle,您将需要添加如下内容:
p3rjfoxz4#
在我的例子中,我已经在下面添加了spring Boot 数据依赖项,但是仍然不能导入
javax.persistence.*
我意识到eclipse无法将这个依赖项添加到我的类路径中。首先,我尝试右键单击项目
Maven>Update Project
,但仍然不起作用。然后,我在根目录中执行mvn eclipse:eclipse
,然后在成功构建后,我在eclipse中刷新了项目。这次,它起作用了。ia2d9nvy5#
在pom.xml中添加此依赖项
之后右键点击你的项目,在maven选项中更新你的项目。这样应该可以修复它。
dfddblmv6#
我有同样的问题,但以前的解决方案对我不起作用。我通过添加以下依赖POM文件来解决这个问题。