2

Lombokが Eclipse (またはその他の IDE) で実際にどのように動作するのか興味があります。私が見つけたのは、バージョン 0.10 以降、javaagent とバイトコードの変更を放棄AbstractProcessorし、完全にそのままにしているということです。ECJ

これは、構文チェックなしでエディターを使用する場合にうまく機能javacしますが、Eclipse の場合、ビルド構成に追加するかのように、 internal を使用したインクリメンタル ビルドでは使用されないため、これ-javaagentは不可能です。したがって、たとえば、コードに存在しないメソッドを使用すると (ただし、バイトコード インストルメンテーションの後で)、単純にエラーがスローされます。-javaagentECJ

私の質問は次のとおりです。コードに存在しないメソッドをエラーなしで表示するにはどうすればよいですか?

アップデート:

.class ファイルから取得されたメソッドに関するchrylis情報により、私の質問は次のように短縮できると思います。

-javaagent + objectweb.asm/javaassist/etc の使用方法。Eclipse での自動ビルドにより、メソッド/フィールド/その他が生成されます。コード補完、メソッド アウトライナーなどを通じて利用できるようになります。

4

1 に答える 1

4

lombok アノテーションを使用して Java モデルを作成するために使用する IDE には、lombok によって生成されたメソッドを処理するための何らかのプラグインを含める必要があります。

プラグインをさまざまな IDE およびパッケージ マネージャーに含めるには、詳細について次のリンクを参照してください: http://projectlombok.org/download.html

  • Mavenor Ivy: ロンボクは Maven Central にあります。さらに…</li>
  • Javac: クラスパスに lombok.jar を置くだけです。
  • NetBeans: クラスパスに lombok.jar を配置して、アノテーション処理を有効にするだけです。さらに…</li>
  • Eclipse and variants: lombok.jar を Java アプリとして実行 (つまり、通常はダブルクリック) してインストールします。また、プロジェクトに lombok.jar を追加します。サポートされているバリアント: Springsource Tool Suite、JBoss Developer Studio
  • IDEA IntelliJ: Michael Plushnikov によって開発されたプラグインは、ほとんどの機能のサポートを追加します。
  • Javadoc: 最初にコードを削除してから、結果に対して javadoc を実行します。さらに…</li>
  • Android: Android でロンボクを使用する適切な方法は、やや複雑ですが可能です。さらに…</li>
  • GWT: Lombok は GWT で動作します。さらに…</li>
  • Play!: フレームワーク Aaron Freeman の lombok play プラグインを使用します。
  • ecj: Lombok は ecj および ecj ベースのツールで動作します。さらに…</li>
于 2014-02-12T15:38:48.113 に答える