Kotlinの.ktソースファイルをプログラムから生成するためのKotlin/Java API。
projectlombok/lombok
アノテーションを使って、getterやequals、ビルダー、ロガーフィールドなどの定型コードを生成するJavaライブラリです。
- スター
- 13,479
- フォーク
- 2,472
- 未解決の Issue
- 1,011
- 最終コミット
- 16 日前
これは何?
Project Lombokは、エディターやビルドツールと連携し、コンパイル時に繰り返し記述するコードを生成するJavaライブラリです。getter、setter、equals、hashCodeメソッドを手作業で書く代わりに、クラスにアノテーションを付けるだけで、メソッドが生成されます。
同じ仕組みで、1つのアノテーションから機能のそろったビルダーを作成したり、ロガー変数を自動で宣言したりすることもできます。コードはコンパイル時に生成されるため、ソースファイルを短く保ち、クラス本来のロジックに集中できます。
LombokはJavaコンパイラーやIDEに組み込んで動作するため、生成されたメンバーを正しく表示するにはエディター側のサポートが必要です。インストール方法と使い方は、プロジェクトのWebサイトで案内されています。
主な機能
- 01アノテーションを使ってgetter、setter、equals、hashCodeを生成します。
- 021つのアノテーションからビルダークラスを作成します。
- 03ロガーフィールドを自動で宣言します。
- 04Javaコンパイラーやビルドツールと連携して動作します。
- 05生成されたメンバーを表示するには、エディタープラグインのサポートが必要です。
ユースケース
- Javaのエンティティ、DTO、値クラスにおける定型コードを減らす。
- 省略可能なフィールドが多いクラスのビルダーを生成する。
- コードベース全体でロガーの宣言を繰り返す手間をなくす。
クイックスタート
- 1
ダウンロードとインストールの手順については、projectlombok.org をご覧ください
使う前に知っておきたいこと
- ライセンスを自動的に特定できませんでした。使用する前に LICENSE ファイルを確認してください。
収録されている特集
トピック
よくある質問
- lombok とは?
- アノテーションを使って、getterやequals、ビルダー、ロガーフィールドなどの定型コードを生成するJavaライブラリです。 Project Lombokは、エディターやビルドツールと連携し、コンパイル時に繰り返し記述するコードを生成するJavaライブラリです。getter、setter、equals、hashCodeメソッドを手作業で書く代わりに、クラスにアノテーションを付けるだけで、メソッドが生成されます。
- lombok は無料で使えますか?ライセンスは?
- lombok は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- lombok は今もメンテナンスされていますか?
- 活発にメンテナンス中。lombok の最終コミットは 2026年10月22日 です。
- lombok は何に使えますか?
- Javaのエンティティ、DTO、値クラスにおける定型コードを減らす。 省略可能なフィールドが多いクラスのビルダーを生成する。 コードベース全体でロガーの宣言を繰り返す手間をなくす。
- lombok のインストール方法は?
- ダウンロードとインストールの手順については、projectlombok.org をご覧ください
- lombok はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/projectlombok/lombok
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Goのソースコードコメントに記述したアノテーションからSwagger 2.0のAPIドキュメントを生成するツールです。
SwiftSyntaxを基盤とするSwiftコードジェネレーター。テンプレートを使ってモックやEquatable、Codableなどの定型コードを生成します。
LLVMコア、Clang C/C++フロントエンド、libc++、LLDリンカーなどを含む、モジュール式のコンパイラおよびツールチェーン技術群。
実行時にx86/x64やAArch64の命令を出力できる、低レイテンシなマシンコード生成向けC++ライブラリ。
アノテーションまたはプログラムによるAPIでCLIアプリを構築でき、サブコマンド、ANSIカラー、シェル補完にも対応するJavaフレームワークです。