-1

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 コンテナー」と統合するために追加で必要なものはありますか?

4

1 に答える 1

0

SonarQube は Plexus を使用せず、PicoContainerを使用します。

于 2015-02-16T16:33:01.260 に答える