0

PicoContainer は JSR-330@Injectおよび@Named. (いいえ、この別の質問は役に立たないようです。PicoContainer サイトが JSR-330 のサポートが追加されたと述べているという事実に対処していないためです。)

次のようにコンテナに何かを追加します。

container.addComponent(Foo.class);
container.addComponent("myBar", new MySpecialBar());
container.addComponent("decoy", new SomeOtherBar());

@Namedコンストラクターのパラメーターを次のようにマークします。

public class Foo(@Named("myBar") Bar bar) { ...

しかし、Fooインスタンスを取得しようとすると、PicoContainer はインスタンスが多すぎBarて選択できないと文句を言います。

質問 1:コンストラクター インジェクションで PicoContainer を使用するにはどうすればよい@Namedですか?

次に、内部でフィールド注入を使用しようとしますFoo.java:

@Inject
@Named("myBar")
Bar bar;

それもうまくいきません。

質問 2: PicoContainer をコンストラクター インジェクション@Injectと連携させるにはどうすればよいですか?@Named

それとも、PicoContainer のニュース ページが間違っていて、単に JSR-330 に対する PicoContainer 2.x のサポートがまったくないのでしょうか?

4

1 に答える 1