Die folgende Karte Bindemittel Bindung gibt mir ein com.google.inject.OutOfScopeException: Nicht in MyScope:In Guice, Erstellen einer Map-Binder-Singleton-Bindung, die eine andere Bereichsabhängigkeit hat?
mapbinder.addBinding("ferrari").to(Ferrari.class).in(Singleton.class);
Ich vermute, dies ist wahrscheinlich, weil der Konstruktor von Ferrari Abhängigkeit von einem Objekt hat, die mit @ bezeichnet ist MyScope. Wie kann ich in einem solchen Fall einen Ferrari Singleton erstellen?
Ich weiß, dass (how to create an object from a different scope), um ein Objekt mit unterschiedlichem Umfang zu erstellen, benötigen wir Provider. Wenn das der Fall ist, was sollte ich in der Get-Methode von FerrariProvider schreiben, damit es mir immer die selbe Instanz von Ferrari zurückgibt? Wie kann ich einen Ferrari Singleton erstellen, der von einem Objekt in einem anderen Bereich abhängt?