そのため、jhipsterプロジェクトのgradleファイルに次の行があることに気付きました。
annotationProcessor ("org.springframework.boot:spring-boot-configuration-processor") {
exclude group: 'com.vaadin.external.google', module: 'Android-json'
}
Mavenの同じ構成を別のプロジェクトにも使用して、次の問題を解決しました: Maven一時的な依存関係(ライブラリ/ jar vaadin json)は除外されていません
そして今、私は次の質問があります:
spring-boot-configuration-processor
は、@ConfigurationProperties
で注釈が付けられたアプリケーション内のクラスに関するメタデータを生成する注釈プロセッサです。このメタデータは、IDE(Eclipse、IntelliJ、またはNetBeans)によって使用され、application.properties
およびapplication.yaml
ファイルの編集時にプロパティの自動補完とドキュメントを提供します。 Spring Bootのリファレンスドキュメントの 関連セクション で、これについてもう少し学ぶことができます。
Spring Boot 1.5.10以降、com.vaadin.external.google:Android-json
はspring-boot-configuration-processor
の依存関係ではなくなったため、除外は不要になりました。
Spring-boot-configuration-processor依存関係は何をしますか?
ビルド内のライブラリをスキャンし、使用するプロパティを確認しますIDEに通知
プロセッサから依存関係を時々除外する必要があるのはなぜですか?
Mavenライブラリは時々衝突する可能性があります-あなたが参照するライブラリはJHipsterによって除外されました JHipsterの依存関係にある別のライブラリと一緒にクラスパス上でエラーが発生したため
プロセッサが必ずしもmvndependency:treeに表示されないのはなぜですか?
jhipster-sample-app
で私のためにやってくれます。おそらく、 リンクされた問題に関するコメント を参照しているのは、Android-json
ライブラリーがツリーにないことを示しています。私はそこでそれについて尋ねました。
依存関係を除外するのが非常に難しい状況で、なぜプロセッサで除外が使用されるのですか?
これは 依存関係の衝突 の問題であり、実際にプロセッサがキーの依存関係を持ち込んでいる(または@ Andy Wilkinson が指摘しているcom.vaadin.external.google:Android-json
はプロセッサで使用されなくなりました)