Возможно, это не тот ответ, который вы ищете, но: вы не можете этого сделать. Построитель создается статическим методом в AnnotatedClass
и уничтожается после вызова build()
. Поэтому, когда у вас есть экземпляр AnnotatedClass
, строитель исчез. А поскольку вы используете внедрение, вы, конечно, не можете давать произвольные аргументы методу bean-компонента.
Шаблон компоновщика предназначен для создания неизменяемых объектов с необязательными полями, а инъекция предназначена для подключения сервисов. Что совсем не то, что вы, очевидно, хотите.
Я рекомендую вам взглянуть на заводскую модель. Внедрите фабрику (например, AnnotatedClassFactory
) в ваш класс и позвольте этой фабрике собрать вам нужные вам экземпляры. Конечно, вы можете заставить фабрику вернуть экземпляр строителя. Это позволило бы вам вводить значения, которые вы можете задавать в каждом экземпляре компоновщика, а все остальное вы можете делать снаружи.