Spring BootでJPA関連のアノテーションを解決できない(jakarta.persistence.Entity等)

実現したいこと

jakarta.persistence.*のimportをしたい

前提

SpringBoot3を書籍で学習しています。
@RestControllerや@Controllerを使う処理やテンプレートエンジン(Thymeleaf)を使う処理は正常に出来ました。
ところがJPAによるデータベースの利用のところでつまずいてしまった状況です。

発生している問題・エラーメッセージ

エンティティクラスを作ろうと@Entityを付与したのですが解決できません。
手でimport jakarta.persistence.Entity; を入れようとしてもjakarta.persistenceがそもそも見つかっていない模様です。

該当のソースコード

build.gradle全文

groovy

1plugins {2 id 'java'3 id 'org.springframework.boot' version '3.1.5'4 id 'io.spring.dependency-management' version '1.1.3'5}6 7group = 'com.example'8version = '0.0.1-SNAPSHOT'9 10java {11 sourceCompatibility = '17'12}13 14repositories {15 mavenCentral()16}17 18dependencies {19 implementation 'org.springframework.boot:spring-boot-starter-web'20 implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'21 implementation 'org.springframework.boot:spring-boot-starter-data-jpa'22 runtimeOnly 'com.h2database:h2'23 testImplementation 'org.springframework.boot:spring-boot-starter-test'24}25 26tasks.named('test') {27 useJUnitPlatform()28}

エンティティクラス(Person.java)

java

1package com.example.sample1app;2 3import jakarta.persistence.Entity; // ここが解決不能4 5@Entity // 必然的にここも解決不能6public class Person {7 8}

試したこと

JPA設定のために行った操作は次の通りです。

1.build.gradleのdependenciesに
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
runtimeOnly 'com.h2database:h2'
を追記(参考書籍のまま)
※他のimplementationは正常に機能しています。

2.gradlewコマンドでプロジェクト更新
.\gradlew clean build --refresh-dependencies
⇒BUILD SUCCESSFULL出ています。

3.前述のPersonクラスに@Entityアノテーションを付与するがエラー。
クイックフィックスの候補にもjakarta.persistence系が出ません。

WEB上の記事や動画を調べてみたのですが前述のimplementationさえ書いておけばどの環境も普通に動いている様子でした。
何か根本的な部分からミスをしているような気がするのですが自力解決には至りませんでした。
どうかお知恵を貸していただけますでしょうか。

補足情報(FW/ツールのバージョンなど)

VSCode : Ver1.84.2
Gradle : Ver8.4
org.springframework.boot : Ver3.1.5
Java : Ver17.0.8

コメントを投稿

0 コメント