Spring Boot项目报错java: package javax.persistance does not exist求助
解决
java: package javax.persistance does not exist错误 问题根源
你的pom.xml存在冗余依赖冲突,且错误提示里的包名有拼写错误(正确包名是javax.persistence,你写的是javax.persistance)。
Spring Boot的spring-boot-starter-data-jpa已经默认包含了JPA API和Hibernate核心依赖,额外添加的javax.persistence-api和hibernate-entitymanager会导致版本冲突,反而让编译器无法找到正确的包。
修正后的pom.xml
删除多余依赖,保留核心starter即可:
<?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.5</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.scode</groupId> <artifactId>Demo</artifactId> <version>0.0.1-SNAPSHOT</version> <name>Demo</name> <description>Demo project for Spring Boot</description> <properties> <java.version>19</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>runtime</scope> <optional>true</optional> </dependency> <!-- 仅保留该starter,已包含所有JPA相关依赖 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
后续操作步骤
- 检查代码中所有导入语句,确保包名是
import javax.persistence.*;(注意是persistence,不是persistance) - 执行Maven命令清理缓存:
mvn clean install -U - 在IDE中重新导入Maven项目(如IDEA点击Maven面板的"Reload All Maven Projects")
- 重新编译项目
内容的提问来源于stack exchange,提问作者Samanthika Rajapaksa
相关产品推荐
相关产品推荐

