Как вы можете комбинировать модули без конструктора без аргументов. У меня есть библиотека, содержащая несколько модулей, которые я хочу повторно использовать в своих приложениях. Однако эти модули требуют некоторых параметров. В следующем примере описывается моя установка:
Библиотека:
@Module(
library = true
)
public class LibModule1 {
private final String mString;
public LibModule1(String string) {
mString = string;
}
//... provide methods
}
@Module(
library = true,
addsTo = LibraryModule1.class
)
public class LibModule2 {
private final String mString;
public LibModule2(String string) {
mString = string;
}
//... provide methods
}
Обратите внимание, что LibModule2 зависит от некоторых предоставленных объектов из LibModule1.
Приложение: в своем приложении я вставляю объекты из LibModule1 и LibModule2 в один класс. Но я не знаю, как я могу объединить эти модули. Параметр includes не работает, так как оба модуля не имеют конструктора без аргументов. addsTo не работает, потому что мне нужны оба библиотечных модуля, но параметр позволяет мне установить только один класс. Создание двух модулей приложения, внедряющих мой класс MyClass.class, не работает (класс может быть внедрен только одним модулем, верно?!).
@Module(
injects = MyClass.class
)
public class AppModule {
}
Как я могу решить эту проблему?