DeepLeaning 4 Jを使用したらLombokが使えなくなった。

エラーメッセージ

いずれも、getter, setterが見つからないというエラーが出ました。このクラスでは、「\@Data」を使用してgetter, setterを実装しなくてもいいように実装しています。

java: シンボルを見つけられません
  シンボル:   メソッド getName()
  場所: タイプjp.zenryoku.rpg.charactors.Playerの変数 player
java: シンボルを見つけられません
  シンボル:   メソッド getHP()
  場所: クラス jp.zenryoku.rpg.charactors.Player

Lombokが使えなくなった。

Mavenを使用して、DL4Jを依存関係に追加しました。その後Lombokが使えなくなりました。

調査結果

DL4Jでlombokを参照しているのでそちらが優先される。
DL4JはJava17以上、である必要があるので、Java1.8を使用している自分の環境では、lombokが動かなかったというわけです。

対応

JDKを1.8から17に変更する。

これで、lombok問題は解決できました。

JavaFXは入っていない

JDK17になるとJavaFXが使用できない。。。
なので、下のようなエラーが出ました。
これは、別件なので、使用するJDKを1.8に戻し、DL4Jを使用しない方向に切り替えます。

java: シンボルを見つけられません
  シンボル:   クラス FXML
  場所: クラス jp.zenryoku.procon.ProConRPGLogic
java: シンボルを見つけられません
  シンボル:   クラス FXML
  場所: クラス jp.zenryoku.procon.ProConRPGLogic

でわでわ。。。

投稿者:

takunoji

音響、イベント会場設営業界からIT業界へ転身。現在はJava屋としてサラリーマンをやっている。自称ガテン系プログラマー(笑) Javaプログラミングを布教したい、ラスパイとJavaの相性が良いことに気が付く。 Spring framework, Struts, Seaser, Hibernate, Playframework, JavaEE6, JavaEE7などの現場経験あり。 SQL, VBA, PL/SQL, コマンドプロント, Shellなどもやります。

コメントを残す