SonarQube checkstyle プラグインの拡張機能を作成しようとしています。依存性注入を使用して、必要な依存性を配線したいと考えています。私が見る限り (ドキュメントが不足しているようです)、SonarQube は IoC コンテナーとして神経叢を使用します。私のカスタム プラグインでは、神経叢コンポーネント ファイルを生成するために必要な依存関係を追加しました ("/META-INF/plexus/components.xml" のプラグイン jar にパッケージ化されていることが確認されています)。ただし、サーバーを起動すると、依存関係が見つからないというエラーが発生します。
org.picocontainer.injectors.AbstractInjector$UnsatisfiableDependenciesException:
foo.SonarCheckstyleRuleRepository has unsatisfied dependency 'interface foo.MyInterface'
for constructor 'public foo.SonarCheckstyleRuleRepository(
foo.MyInterface,foo.DifferentInterface)'...
SonarQube サーバー内にコンポーネントを登録するために、プラグイン (components.xml の外部) に追加の構成が必要ですか? plexus classworlds ライブラリをプラグインと一緒にパッケージ化する必要がありますか? 「pico コンテナー」と統合するために追加で必要なものはありますか?