1. ホーム

[解決済み】IntelliJ IDEAでLombokを使用している場合、プロジェクトをコンパイルできません。

2022-04-01 22:36:34

質問

を使おうとしています。 Lombok IntelliJ IDEA 11 を使って開発しているプロジェクトで。

インストールしたのは IDEA用サードパーティープラグイン で、IDEAは自動生成されたすべてのメソッド/フィールドを見るので、うまくいっているようです。

そこで、私はSlf4jを使用するクラスを持っています。私はそれを次のようにアノテートしました

import lombok.extern.slf4j.Slf4j;

@Slf4j
public class TestClass
{
    public TestClass()
    {
        log.info("Hello!");
    }
}

しかし、私のプロジェクトをビルドすると、コンパイラは吐き出します。 cannot find symbol variable log .

何が足りないのか、教えていただけませんか?

更新してください。 RequestFactoryのアノテーション処理に失敗していることが判明しました。

input files: {com.zasutki.courierApp.server.TestServlet, com.mine.courierApp.server.model.DatastoreObject}

annotations: [javax.inject.Singleton, javax.inject.Inject, lombok.Getter, lombok.Setter, com.googlecode.objectify.annotation.Id, com.googlecode.objectify.annotation.OnSave]

Processor com.google.web.bindery.requestfactory.apt.RfValidator matches [lombok.Getter, com.googlecode.objectify.annotation.Id, javax.inject.Inject, lombok.Setter, com.googlecode.objectify.annotation.OnSave, javax.inject.Singleton] and returns false.

cannot find symbol variable log

何か回避策はありますか?

更新2: 読者の皆さんはあまり聞きたくないかもしれませんが、結局は Scala .

どのように解決するのですか?

IDEA 12では、チェックボックスの設定により修正されました。 Enable annotation processing にあります。

<ブロッククオート

設定 -> コンパイラ -> アノテーションプロセッサー

IDEA 2016.2用です。

環境設定... > ビルド、実行、デプロイメント > コンパイラ > アノテーションプロセッサー

有効にした後、以下を実行します。 ビルド -> プロジェクトを再構築する でアノテーションを認識させ、エラーをなくします。


IDEA 2019.2.1の場合、プロジェクトの構成によってはProject Lombokプラグインをインストールするだけでは不十分な場合があります。ここでは、IntelliJ IDEAでProject Lombokを使用する別の方法を紹介します。

  1. 訪問先 https://projectlombok.org/download
  2. JARファイルをプロジェクトのlibディレクトリにダウンロードする(例. $HOME/dev/java/project/libs ).
  3. IDEを起動します。
  4. クリック ファイル 設定 .
  5. 拡大する ビルド、実行、デプロイメント ? コンパイラ アノテーションプロセッサー .
  6. 確保する アノテーション処理を有効にする がチェックされています。
  7. 確認する からの相対パスでソースを生成します。 はプロジェクトのモジュール設定に基づいて選択されます (もし モジュール出力ディレクトリ が動作しない場合は、戻って他の設定を試してください)。
  8. クリック 適用 .
  9. クリック プラグイン .
  10. クリック マーケットプレイス .
  11. 検索フィールドを設定します。 lombok
  12. インストール Lombok .
  13. クリック OK .
  14. プロンプトが表示されたら、IDE を再起動します。
  15. クリック ファイル プロジェクト構成 .
  16. 選択 ライブラリ .
  17. をクリックします。 + シンボルを使って新しいプロジェクトライブラリを追加します(または Alt + 挿入 ).
  18. 選択 ジャワ .
  19. にパスを設定します。 $HOME/dev/java/project/libs/lombok.jar
  20. クリック OK .
  21. 適用するモジュールを選択します。
  22. クリック OK .
  23. オプションで、名前を変更する lombok から Project Lombok 1.18.8 .
  24. クリック OK .

プロジェクトはこれで lombok パッケージを使用し、Project Lombokアノテーションを使用します(例. lombok.Setterlombok.Getter ).