Problem:
Dagger 2 gibt beim Versuch, auf eine Abhängigkeit zuzugreifen, den Fehler „com.example.MyDependency kann nicht bereitgestellt werden [...]“ zurück. Dieser Fehler weist darauf hin, dass Dagger nicht über den notwendigen Mechanismus verfügt, um die angegebene Abhängigkeit zu erstellen oder bereitzustellen.
Erklärung:
Wie aus der Fehlermeldung hervorgeht, benötigt Dagger eine von zwei Methoden, um Abhängigkeiten bereitstellen:
Fix:
Um dieses Problem zu beheben, stellen Sie sicher, dass Sie über Folgendes verfügen entweder:
Fügen Sie einen @Inject-annotierten Konstruktor zur Klasse hinzu, die Sie als verwenden möchten Abhängigkeit.
Beispiel:
class MyDependency { @Inject MyDependency() { /**/ } }
Fügen Sie das Modul zur Komponentendeklaration hinzu.
Beispiel:
@Module class MyModule { @Provides MyDependency provideMyDependency() { return new MyDependency(); } } @Component(modules = MyModule.class) interface MyComponent { MyDependency myDependency(); }
Zusätzlich Hinweise:
Das obige ist der detaillierte Inhalt vonDagger 2-Fehler: „Kann nicht bereitgestellt werden …' – Wie lassen sich Probleme mit der Abhängigkeitsinjektion beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!