Spring Boot - javax Import语句无法正常工作

Bra*_*ett 2 java eclipse spring spring-mvc javax.persistence

我刚开始工作的春天开机,和我目前正在跟踪这个教程有一些小的修改,命名和使用自己的版本Eclipse,它有这个发生器内置的.

当我到达第一段代码时,我尝试只复制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;
Run Code Online (Sandbox Code Playgroud)

这让javax导入出现以下错误:

The import javax.persistence.[insert name here] cannot be resolved
Run Code Online (Sandbox Code Playgroud)

当我找到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>
Run Code Online (Sandbox Code Playgroud)

Man*_*anu 53

也许这会对某人有所帮助:显然 Javax persistence api 已重命名为 Jakarta persistence。所以你必须导入jakarta.persistence而不是javax.persistence.

  • 这就是给我的 (5认同)
  • 我正在寻找 javax. 现在明白了。谢谢。 (2认同)

Ama*_*har 15

添加 spring-boot-starter-data-jpa依赖项

如果您正在使用Maven添加到pom.xml

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
Run Code Online (Sandbox Code Playgroud)

如果您Gradlebuild.gradle中使用add

compile "org.springframework.boot:spring-boot-starter-data-jpa"
Run Code Online (Sandbox Code Playgroud)

其他参考这个.