[解決済み】IntelliJ IDEAでLombokを使用している場合、プロジェクトをコンパイルできません。
質問
を使おうとしています。 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を使用する別の方法を紹介します。
- 訪問先 https://projectlombok.org/download
-
JARファイルをプロジェクトのlibディレクトリにダウンロードする(例.
$HOME/dev/java/project/libs
). - IDEを起動します。
- クリック ファイル 設定 .
- 拡大する ビルド、実行、デプロイメント ? コンパイラ アノテーションプロセッサー .
- 確保する アノテーション処理を有効にする がチェックされています。
- 確認する からの相対パスでソースを生成します。 はプロジェクトのモジュール設定に基づいて選択されます (もし モジュール出力ディレクトリ が動作しない場合は、戻って他の設定を試してください)。
- クリック 適用 .
- クリック プラグイン .
- クリック マーケットプレイス .
-
検索フィールドを設定します。
lombok
- インストール Lombok .
- クリック OK .
- プロンプトが表示されたら、IDE を再起動します。
- クリック ファイル プロジェクト構成 .
- 選択 ライブラリ .
- をクリックします。 + シンボルを使って新しいプロジェクトライブラリを追加します(または Alt + 挿入 ).
- 選択 ジャワ .
-
にパスを設定します。
$HOME/dev/java/project/libs/lombok.jar
- クリック OK .
- 適用するモジュールを選択します。
- クリック OK .
-
オプションで、名前を変更する
lombok
からProject Lombok 1.18.8
. - クリック OK .
プロジェクトはこれで
lombok
パッケージを使用し、Project Lombokアノテーションを使用します(例.
lombok.Setter
と
lombok.Getter
).
関連
-
[解決済み] ボタンでTextFieldをクリアする(Java)
-
[解決済み] Java の substring() の時間複雑性
-
[解決済み] Java の条件付きコンパイル:コードチャンクをコンパイルしないようにするには?
-
[解決済み] 型の不一致:ArrayListからListへの変換ができない
-
[解決済み] java.lang.ClassCastException: java.lang.Long を java.lang.Integer にキャストできない(java 1.6
-
[解決済み] javaでメソッドを呼び出すプログラムのエラー修正
-
[解決済み] IntelliJ IDEAを使用してJavaコードの行数をカウントする方法は?
-
[解決済み] Intellij Idea: Gradleプロジェクトのインポート - JAVA_HOMEがまだ定義されていないことを取得する
-
[解決済み】IntelliJ IDEAプロジェクトに外部jar(lib/*.jar)を追加するための正しい方法
-
[解決済み] Lombokを追加したが、Intellij IDEAでゲッターとセッターが認識されない
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] コレクションへの共有参照が見つかりました org.hibernate.HibernateException
-
[解決済み] javacが「using unchecked or unsafe operations」という警告を出す原因は何ですか?
-
[解決済み] double 型を Int 型に変換、切り捨て
-
[解決済み] java.lang.ClassNotFoundException: クラス com.ibm.db2.jcc.DB2Driver が Worklight プラットフォームまたはプロジェクトに見つかりませんでした。
-
[解決済み] JavaにおけるMouseListenerとMouseAdapterの違いについて
-
[解決済み] 午前0時からの時間を秒単位で取得する方法
-
[解決済み] どのように配列の10未満の値(x * 2)を倍増するコードを取得するには?(Java)
-
[解決済み] init-paramとcontext-param
-
[解決済み] Maven: assembly-pluginが全く実行されない
-
[解決済み] Lombokを追加したが、Intellij IDEAでゲッターとセッターが認識されない