Lombokが Eclipse (またはその他の IDE) で実際にどのように動作するのか興味があります。私が見つけたのは、バージョン 0.10 以降、javaagent とバイトコードの変更を放棄AbstractProcessor
し、完全にそのままにしているということです。ECJ
これは、構文チェックなしでエディターを使用する場合にうまく機能javac
しますが、Eclipse の場合、ビルド構成に追加するかのように、 internal を使用したインクリメンタル ビルドでは使用されないため、これ-javaagent
は不可能です。したがって、たとえば、コードに存在しないメソッドを使用すると (ただし、バイトコード インストルメンテーションの後で)、単純にエラーがスローされます。-javaagent
ECJ
私の質問は次のとおりです。コードに存在しないメソッドをエラーなしで表示するにはどうすればよいですか?
アップデート:
.class ファイルから取得されたメソッドに関するchrylis情報により、私の質問は次のように短縮できると思います。
-javaagent + objectweb.asm/javaassist/etc の使用方法。Eclipse での自動ビルドにより、メソッド/フィールド/その他が生成されます。コード補完、メソッド アウトライナーなどを通じて利用できるようになります。