カテゴリ: Spring 更新日: 2026/01/15
PR
独学でJavaを学んでいる方向け
「実務レベルに到達できるか不安」「1人だと詰まることが多い」場合は、 実践重視で学べる環境を一度確認しておくのも一つの手です。
EBAエデュケーション |学習内容・サポートを見る

Spring BootでLombokを使いこなす!導入方法とannotation processingのエラー対策まとめ

Spring BootのLombok導入とエラー対策:annotation processingの設定
Spring BootのLombok導入とエラー対策:annotation processingの設定

先生と生徒の会話形式で理解しよう

生徒

「Spring Bootの開発で、Lombokっていうライブラリを使いたいんですが、エラーが出て動きません…」

先生

「Lombokは非常に便利なライブラリですが、IDE側でannotation processingの設定をしておかないとエラーになりますよ。」

生徒

「なるほど…!ちゃんと動かすには何をすればいいんですか?」

先生

「それでは、Spring BootでのLombokの導入方法とannotation processing設定を詳しく説明していきましょう。」

1. Lombokとは何か?なぜ使うのか?

1. Lombokとは何か?なぜ使うのか?
1. Lombokとは何か?なぜ使うのか?

Lombok(ロンボック)は、Javaのボイラープレートコード(getter/setterやコンストラクタなど)を自動生成してくれる便利なライブラリです。Spring Bootでアプリケーション開発をしていると、エンティティやDTOクラスなどで毎回同じようなコードを書くことが多くなりますが、Lombokを使えばそれを一括で省略できます。

例えば以下のように@Getter@Setter@NoArgsConstructorなどを使うだけで、自動的にコードが生成されます。


import lombok.Getter;
import lombok.Setter;
import lombok.NoArgsConstructor;

@Getter
@Setter
@NoArgsConstructor
public class User {
    private String name;
    private int age;
}

これにより、記述量を大幅に削減し、可読性も向上します。

2. Spring BootでLombokを導入する方法

2. Spring BootでLombokを導入する方法
2. Spring BootでLombokを導入する方法

Spring BootプロジェクトにLombokを導入するには、MavenやGradleで依存関係を追加するだけです。

Mavenの場合はpom.xmlに以下を追加します。


<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.30</version>
    <scope>provided</scope>
</dependency>

Gradleの場合はbuild.gradleに以下を記述します。


dependencies {
    compileOnly 'org.projectlombok:lombok:1.18.30'
    annotationProcessor 'org.projectlombok:lombok:1.18.30'
}

ここまでで、Lombokのライブラリ自体はプロジェクトに組み込まれます。

PR

将来を見据えて、+αのスキルを身につけたい方へ

JavaやLinuxを学んでいても、「このままで市場価値は上がるのか」 「キャリアの選択肢を広げたい」と感じる方は少なくありません。

AIを学ぶならアイデミープレミアム

3. よくあるエラー「Lombokのアノテーションが効かない」

3. よくあるエラー「Lombokのアノテーションが効かない」
3. よくあるエラー「Lombokのアノテーションが効かない」

Lombokを導入したのに、@Getter@Builderなどが効かない、赤い波線が出る、コンパイルエラーになる…という場合は、IDEのannotation processing(アノテーションプロセッシング)設定が無効になっている可能性があります。

これは特にIntelliJ IDEAでよくあるトラブルです。

4. IntelliJ IDEAでannotation processingを有効にする

4. IntelliJ IDEAでannotation processingを有効にする
4. IntelliJ IDEAでannotation processingを有効にする

IntelliJでLombokが正しく動作しない場合は、以下の手順でannotation processingを有効化しましょう。

  • 1. メニューから「File」→「Settings」(Macの場合は「IntelliJ IDEA」→「Preferences」)を開く
  • 2. 左メニューの「Build, Execution, Deployment」→「Compiler」→「Annotation Processors」を選択
  • 3.「Enable annotation processing」にチェックを入れる
  • 4.「Apply」→「OK」で設定を保存

設定後はプロジェクトを一度ビルドし直すと、Lombokのアノテーションが反映されるようになります。

5. Lombokプラグインのインストールも忘れずに

5. Lombokプラグインのインストールも忘れずに
5. Lombokプラグインのインストールも忘れずに

IntelliJやEclipseでは、Lombok用のプラグインをインストールしておくことで、IDEがアノテーションを正しく認識するようになります。

IntelliJでのプラグインインストール手順:

  • 1.「File」→「Settings」→「Plugins」
  • 2.「Marketplace」で「Lombok」と検索
  • 3.「Install」でインストールし、IDEを再起動

このステップを行わないと、ビルドは通ってもエディタ上でエラーになることがあります。

6. Eclipseでのannotation processing設定

6. Eclipseでのannotation processing設定
6. Eclipseでのannotation processing設定

Eclipseの場合も、annotation processingの有効化が必要です。手順は以下の通りです。

  • 1.「プロジェクトを右クリック」→「Properties」
  • 2.「Java Compiler」→「Annotation Processing」を選択
  • 3.「Enable project specific settings」にチェック
  • 4.「Annotation Processing」→「Enable annotation processing」にチェック
  • 5. 適用して再ビルド

これでEclipseでもLombokの機能が正しく使えるようになります。

7. Lombokのアノテーションをいくつか紹介

7. Lombokのアノテーションをいくつか紹介
7. Lombokのアノテーションをいくつか紹介

ここで、初心者の方にもわかりやすいように、よく使うLombokのアノテーションをいくつか紹介します。

  • @Getter:すべてのフィールドにgetterを自動生成
  • @Setter:setterを自動生成
  • @NoArgsConstructor:引数なしコンストラクタ生成
  • @AllArgsConstructor:全引数コンストラクタ生成
  • @Builder:ビルダーパターンを自動生成
  • @Data@Getter, @Setter, @ToString, @EqualsAndHashCode, @RequiredArgsConstructorの合成

特に@Dataはとても強力で、エンティティクラスなどで頻繁に使われます。

まとめ

まとめ
まとめ

Spring Boot開発において、Lombokはコードの簡略化とメンテナンス性向上に非常に効果的なライブラリです。@Getter@Setter@Builderなどのアノテーションを活用することで、毎回手書きしていた冗長なコードを削減し、読みやすく効率的なクラス設計が可能になります。
しかし、IDE側でannotation processing(アノテーションプロセッサ)の設定が適切にされていないと、Lombokのアノテーションが効かず、ビルドエラーやエディタ上の赤線表示に悩まされることになります。特にIntelliJ IDEAやEclipseなどの開発環境では、設定をしっかり確認することが重要です。
また、プラグインのインストールやバージョンの整合性も大切なポイントです。Spring Bootのバージョンに適したLombokのバージョンを使い、IDEに合わせた設定を行うことで、開発中のトラブルを回避できます。
最後に、Lombokの基本アノテーションだけでなく、@Data@Builderといった便利なアノテーションを場面ごとに使い分けることで、より柔軟で再利用性の高いコードを書くことができます。特にチーム開発においては、可読性の高いクラス設計がコードレビューの効率にも直結します。
初心者の方も今回の設定と使い方をしっかり理解しておけば、Lombokを武器にして、Spring Bootアプリケーションの開発を快適に進められるようになります。

Lombokを活用したサンプルクラス


import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class Product {
    private String name;
    private int price;
    private boolean inStock;
}

生成される主なコード(イメージ)


// 自動生成されるgetter/setterなど(実際には見えないがコンパイル時に生成)
public String getName() { return this.name; }
public void setName(String name) { this.name = name; }
// ... 以下略
先生と生徒の振り返り会話

生徒

「今回でLombokの導入方法と設定の大切さがよくわかりました!特にannotation processingの設定を忘れがちだったので、今後は気をつけます。」

先生

「それは良かったです。Lombokは正しく設定さえできれば非常に強力ですし、今後の開発でも役立つはずです。」

生徒

「@Dataや@Builderの違いもはっきりしてきました。使い分けていくのがポイントですね!」

先生

「その通りです。プロジェクトやチームの方針に合わせて、適切なアノテーションを選ぶことが重要です。」

生徒

「これで自信を持ってSpring BootプロジェクトにLombokを導入できます!ありがとうございました!」

先生

「こちらこそ、しっかり学んでくれて嬉しいです。次はビルダーパターンの活用方法についても挑戦してみてくださいね。」

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

Spring BootでLombokを使うには、どんな依存関係をGradleに追加すればいいですか?

Spring BootでLombokを使うには、Gradleのbuild.gradleファイルに「lombok」「annotationProcessor」の依存関係を記述する必要があります。

IntelliJ IDEAでLombokが動作しない原因は何ですか?

IntelliJ IDEAでLombokが動かない原因は、多くの場合「annotation processing(アノテーションプロセッシング)」の設定が無効になっているためです。
カテゴリの一覧へ
新着記事
PR

JavaやLinuxの検証環境に
低コストで使えるVPS

Spring Data JPAのJpaRepositoryインターフェースの使い方を完全ガイド!初心者でも安心
JSPの実行の流れをフローで理解!サーブレットとの関係性と処理順序を理解しよう
JavaのLocalDateTimeクラスとisAfterメソッドを完全ガイド!初心者でもわかる日時比較
JSPの基本タグ一覧と使い方まとめ!実務で使えるタグを紹介
PR 未経験からITエンジニアを目指す方へ

Javaを学んでいるけど、「このまま未経験で就職できるか不安」という20代向け。 学歴不問・無料サポートの就職支援という選択肢があります。

Tamesy |無料で面談予約
人気記事
No.1
Java&Spring記事人気No1
JavaのIntegerクラスの使い方を完全ガイド!初心者でもわかる整数操作
No.2
Java&Spring記事人気No2
Javaのラムダ式で配列を扱う!Arrays.streamの基本と注意点を初心者向けに解説
No.3
Java&Spring記事人気No3
Spring BootとJavaの互換性一覧!3.5/3.4/3.3はJava 21・17に対応してる?
No.4
Java&Spring記事人気No4
JavaのRuntimeExceptionを完全解説!初心者でもわかるjava.langパッケージの基礎
No.5
Java&Spring記事人気No5
Spring BootのJakarta移行ガイド!初心者向けjavax→jakarta変更ポイント徹底解説
No.6
Java&Spring記事人気No6
Springの@Serviceアノテーションの使い方を徹底解説!初心者でもわかるSpring フレームワーク入門
No.7
Java&Spring記事人気No7
JavaのHttpSessionを徹底解説!初心者でもわかるセッション管理の基本
No.8
Java&Spring記事人気No8
Thymeleaf(タイムリーフ)入門!初心者でもわかるSpring Bootとテンプレートエンジンの使い方
PR

ローカルPCに依存しない開発環境という選択肢

Java・Linuxの検証や学習環境を、クラウド上ですぐに用意できます。

Java入門

Javaの基礎を体系的に学びたい場合は、文法だけでなく 「なぜそう書くのか」まで丁寧に解説されているため、 初心者でも理解しやすい定番の1冊です。

スッキリわかるJava入門 第4版

※ 紙の書籍・電子書籍どちらでも購入できます

Java実践

ジェネリクス、enum、シールクラスなどの型設計から、 関数型プログラミング(ラムダ式・Stream API)、 JVM制御やリフレクション、外部ライブラリの活用までを扱っており、 「Javaを使えるレベル」へ進むための内容が網羅されています。

スッキリわかるJava入門 実践編 第4版

※ 紙の書籍・電子書籍どちらでも購入できます

Spring入門

Spring Frameworkの全体像から、 Webアプリ開発で必要となる主要機能までを 体系的に解説している定番の入門書です。

Spring徹底入門 第2版 Spring FrameworkによるJavaアプリケーション開発

※ 紙の書籍・電子書籍どちらでも購入できます

PR 実務経験のあるエンジニア向け

Javaなどの実務経験があり、次のキャリアを検討している方向け。 IT・ゲーム業界に特化した転職支援サービスという選択肢もあります。

転職ボックス |IT・ゲーム業界専門