質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.40%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Gradle

Gradleは、ビルド自動化ツールです。 ソフトウェアパッケージやドキュメント、 または実際に何か他の種類のプロジェクトの構築、テスト、公開、展開などを自動化が出来ます

Spring Boot

Spring Bootは、Javaのフレームワークの一つ。Springプロジェクトが提供する様々なフレームワークを統合した、アプリケーションを高速で開発するために設計されたフレームワークです。

Q&A

解決済

1回答

807閲覧

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

Odagirizm

総合スコア1

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Gradle

Gradleは、ビルド自動化ツールです。 ソフトウェアパッケージやドキュメント、 または実際に何か他の種類のプロジェクトの構築、テスト、公開、展開などを自動化が出来ます

Spring Boot

Spring Bootは、Javaのフレームワークの一つ。Springプロジェクトが提供する様々なフレームワークを統合した、アプリケーションを高速で開発するために設計されたフレームワークです。

0グッド

0クリップ

投稿2023/12/04 08:38

実現したいこと

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

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

自己解決しました。
ユーザーフォルダの.gradleの中身とプロジェクトフォルダの.gradleの中身を消してみたら解決できるようになりました。
致命的なミスではなかったけどちょっと釈然としない結果でした。

投稿2023/12/06 11:59

Odagirizm

総合スコア1

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.40%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問