You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot JPA项目中@Entity注解无法解析的解决办法

问题:Spring Boot中@Entity注解无法解析

我正在跟着课程学习Spring Boot,在MVC模块同步学习JPA,创建实体类时写了这段代码:

package com.user.model;

import javax.persistence.Entity;

@Entity
public class Persona {
}

但@Entity注解无法被解析,已经在pom.xml中引入了JPA依赖,pom.xml内容如下:

pom.xml文件内容

<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.7.2</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.tito</groupId>
    <artifactId>demoWebApplication</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>demoWebApplication</name>
    <description>Demo for webapplication</description>
    <properties>
        <java.version>18</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-thymeleaf</artifactId>
        </dependency>

        <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-data-jpa -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
            <version>2.7.2</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/org.postgresql/postgresql -->
        <dependency>
            <groupId>org.postgresql</groupId>
            <artifactId>postgresql</artifactId>
            <version>42.4.0</version>
        </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>
                <version>${project.parent.version}</version>
            </plugin>
        </plugins>
    </build>

</project>

使用IntelliJ IDEA时出现如下警告:
IDE Intellij IDEA Warning

请问该如何解决这个问题?


解决方案
  • 重新导入Maven依赖:
    打开IDEA右侧的Maven窗口,点击左上角的刷新按钮(重新导入所有Maven项目),等待依赖下载完成,确认spring-boot-starter-data-jpa已出现在项目的External Libraries中。

  • 调整注解导入路径:
    Spring Boot 2.7.x虽兼容javax.persistence,但部分JPA依赖已默认使用Jakarta EE规范。如果刷新依赖后仍报错,替换实体类中的导入语句:

    import jakarta.persistence.Entity;
    
  • 修正Java版本兼容性:
    Spring Boot 2.7.x官方推荐Java 8-17,而你当前使用的Java 18可能存在兼容问题。修改pom.xml中的Java版本配置:

    <properties>
        <java.version>17</java.version>
    </properties>
    

    之后在IDEA的Project Structure中同步设置项目的Java版本。

  • 清理IDE缓存:
    点击File -> Invalidate Caches...,选择Invalidate and Restart,重启IDE后重新加载项目。


内容的提问来源于stack exchange,提问作者TTT2

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 14:45:56