Проблема с импортом javax.persistence.EntityManager ( Менеджер объектов );

#java #hibernate #jpa

#java #спящий режим #jpa

Вопрос:

Привет, я хочу создавать проекты с использованием баз данных. Я нашел несколько руководств на YouTube, но у меня проблема с Java JPA / Hibernate. Даже если я выполняю каждый шаг, я просто не могу импортировать в свой класс

 import javax.persistence.EntityManage
 

Я использую IntelliJ, и вот как я пытаюсь это сделать.
Сначала я создаю проект maven без архетипов.
Затем в моем pom.xml файл, который по какой-то причине выглядит иначе, чем в учебнике.

Я добавляю зависимости.

 <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-core</artifactId>
            <version>5.4.28.Final</version>
       </dependency>

  <dependency>
            <groupId>javax.persistence</groupId>
            <artifactId>javax.persistence-api</artifactId>
            <version>2.2</version>
  </dependency>
 

Второй может и не понадобиться, но на данный момент я пробую все. В конце мой 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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>BD</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <maven.compiler.source>15</maven.compiler.source>
        <maven.compiler.target>15</maven.compiler.target>
    </properties>

    <dependencies>
        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
            <version>1.4.197</version>
        </dependency>

        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-core</artifactId>
            <version>5.4.28.Final</version>
        </dependency>

    </dependencies>
</project>
 

В моем pom-файле ошибок нет.
Я также сделал persistence.xml файл, но проблема появляется раньше, чем это имеет значение.
Я потратил несколько часов на поиски решения, и я так зол на себя, что не могу справиться с такой простой вещью, но я понятия не имею, что я делаю не так. Я буквально следую руководству, которое четко работает.

Комментарии:

1. Почему у вас нет javax.persistence-api в final pom.xml ? Вы пытались обновить зависимости maven с помощью IntelliJ IDEA? Как это описано в официальных документах: jetbrains.com/help/idea/work-with-maven-dependencies.html

2. Спасибо, обновление помогло. Удивительно, как я застрял на такой мелочи, которую учебник пропустил, чтобы сказать.

3. Рад, что это помогло 🙂 Я добавлю это в качестве ответа, чтобы сделать его более заметным и помочь другим, если они окажутся в такой же ситуации.

Ответ №1:

IntelliJ IDEA иногда требуется небольшая помощь для обновления зависимостей, объявленных в pom.xml:

Вы можете вручную повторно импортировать зависимости, выполнив следующую процедуру:

  1. В окне инструмента Maven щелкните правой кнопкой мыши связанный проект.
  2. В контекстном меню выберите Перезагрузить проект значок Перезагрузить проект.

Дополнительная информация приведена в официальных документах: