Class AutowireFactory

java.lang.Object
com.ultikits.ultitools.context.AutowireFactory

@Internal public class AutowireFactory extends Object
Simple autowire factory to replace Spring's AutowireCapableBeanFactory.
简单的自动装配工厂,用于替换Spring的AutowireCapableBeanFactory。
  • Field Details

  • Constructor Details

  • Method Details

    • autowireBean

      public void autowireBean(Object bean)
      Autowire bean dependencies.
      自动装配Bean依赖。
      Parameters:
      bean - the bean to autowire
      要自动装配的Bean
    • warnUnresolvedRequiredDependency

      private void warnUnresolvedRequiredDependency(Field field)
      Warn that a required = true dependency could not be resolved.
      一个 required = true 的依赖没解析出来时发出警告。

      在此之前 required() 从来没被读过:解析不到就把字段留成 null,插件照常启动, NPE 在之后某处才炸,而模块作者分不清是「bean 没注册」「不在扫描范围」「宿主是 new 出来 的所以根本没走注入」还是「自己忘了写注解」——四种原因同一个症状。见 issue #182。

      本版只警告,不抛。可能已经有下游模块正带着 null 字段跑在生产上,需要一个版本的观察期; 改抛留给 6.3.0。构造器注入路径(SimpleContainer#createBeanWithConstructorInjection) 一直是直接抛的,两者的不一致也留到那时一起收。

      Parameters:
      field - the unresolved field
      没解析出来的字段