SpringBootでエンティティクラスを作成し、インポートを実施すると「import javax.persistenceが見つからない」と表示される。
pom.xmlのJPAの設定を確認
原因を調査した結果、まずpom.xmlにJPAの設定がないとこのように表示されるようだ。そこでpom.xmlの中身を確認し、以下の設定があることを確認した。これは問題ないようだ。
1 2 3 4 |
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> |
SpringBootのバージョンを確認
さらに調べると以下のページにjavaxは最新のSpringBootのバージョンでjakartaに置き換えられたという情報があった。自分の場合、どうやらこれが原因のようです。
Spring Data JPA を使用して javax.persistence から @Entity アノテーションをインポートできない
javaxをjakartaに置き換える
SpringBootのバージョンによってはjavaxが使えないことが分かったので、jakartaに置き換えようと思います。
まずは上記で確認したpom.xmlのJPAの設定をjakartaに変更します。
1 2 3 4 5 |
<dependency> <groupId>jakarta.persistence</groupId> <artifactId>jakarta.persistence-api</artifactId> <version>3.1.0</version> </dependency> |
次にjavaファイル内のインポートをjakartaに変更します。
import javax.persistence.XXXXのようにしていたところを、
import jakarta.persistence.XXXXのように書き換えます。
1 2 3 4 5 6 7 |
import jakarta.persistence.Entity; import jakarta.persistence.GeneratedValue; import jakarta.persistence.GenerationType; import jakarta.persistence.Id; import jakarta.persistence.JoinColumn; import jakarta.persistence.JoinColumns; import jakarta.persistence.ManyToOne; |
自分の場合はこれでエンティティクラスのアノテーションが使用できるようになりました。
コメントを残す