こんにちは、
エンティティでlombokを使用していて、MetaModelEntitiesを作成したいと考えています。 そこで、lombok AnnotationProcessorを使用しました。 プロジェクトをコンパイルすると、以下のエラーが発生します。
これが私のツールのバージョンです:
Maven 3.2.5
Java 1.8
ロンボク1.16.6
これが私がロンボクを使う方法です:
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.2</version>
<configuration>
<source>${project.java.version}</source>
<target>${project.java.version}</target>
<encoding>${project.build.sourceEncoding}</encoding>
<!--<compilerArgument>-proc:none</compilerArgument>-->
<annotationProcessors>
<annotationProcessor>lombok.core.AnnotationProcessor</annotationProcessor>
</annotationProcessors>
</configuration>
</plugin>
<plugin>
<groupId>org.bsc.maven</groupId>
<artifactId>maven-processor-plugin</artifactId>
<version>2.2.4</version>
<executions>
<execution>
<id>process</id>
<goals>
<goal>process</goal>
</goals>
<phase>generate-sources</phase>
<configuration>
<!-- source output directory -->
<outputDirectory>${generated-java-source}</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.9.1</version>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>${generated-java-source}</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
lombok 1.14.8を使用しても、問題は発生しません。 1.16.6jarファイルを見ると。 lombok.core.AnnotationProcessorはそこにありますが、すべてのクラス拡張子は.lombokです。 これが問題の原因だと思います。
どうすれば解決できますか?
これらのバージョン間で、jar内のクラスローディングインフラストラクチャを変更しました。
正しい注釈プロセッサクラスは次のように変更されました。
lombok.launch.AnnotationProcessorHider $ AnnotationProcessor
その文字列をXMLの次の場所に配置してみてください:plugins / plugin [maven-compiler-plugin] / configuration / annotationProcessors / annotationProcessor。
これが機能しない場合は、問題を再度開いてください。
このようにAnnotationProcessorクラスを変更すると:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.2</version>
<configuration>
<source>${project.java.version}</source>
<target>${project.java.version}</target>
<encoding>${project.build.sourceEncoding}</encoding>
<!--<compilerArgument>-proc:none</compilerArgument>-->
<annotationProcessors>
<annotationProcessor>lombok.launch.AnnotationProcessorHider$AnnotationProcessor</annotationProcessor>
</annotationProcessors>
</configuration>
</plugin>
問題は解決しました。 どうもありがとうございます。
私は偶然にも私の問題に対するこれと同じ解決策を発見しました。
将来のグーグルが正しい情報につながる可能性のあるエラーを貼り付けます。
MavenLombokがシンボルメソッドを見つけることができません
誰かがまだ正しい答えを探しているなら、ここにあります;)
リンク: https :
これをsbtプロジェクトに追加する方法は?
まだエラーが発生しています。何が問題になっているのかわかりません。助けてください。
pomファイルを修正してください。 https://projectlombok.org/setup/mavenによる
Mavenコンパイラプラグイン構成の正しいビットは次のようになります。
火、2020年8月25日には、午前12時25分Shreyar20の[email protected]は書きました:
まだエラーが発生しています。何が問題になっているのかわかりません。助けてください。
—
このスレッドにサブスクライブしているため、これを受け取っています。
このメールに直接返信し、GitHubで表示してください
https://github.com/rzwitserloot/lombok/issues/905#issuecomment-679941073 、
または購読を解除する
https://github.com/notifications/unsubscribe-auth/AABIERIZCS5KACXZ4Z3ZUMTSCOGSRANCNFSM4BOM65VA
。
最も参考になるコメント
このようにAnnotationProcessorクラスを変更すると:
問題は解決しました。 どうもありがとうございます。