我无法相信这很难弄明白。我是一个Grails / Groovy newb但我期望的是,这应该以某种方式在Groovy中完成。我正在复制一个旧项目并为Java 8更新它。到目前为止,我修复了库和依赖项,但我必须改变的一件事是在Java类中引用org.springframework.core.env.Environment
。我认为从应用程序上下文中获取它会很容易,但它以某种我不理解的方式完成。
我一直在倾倒这个http://docs.grails.org/2.4.5/guide/spring.html,但现在还不清楚。请注意,我必须将其连接到一个Java类。
答案 0 :(得分:0)
如果这个类不是一个Spring bean或以某种其他方式成为依赖注入的候选者,那么它很可能直接或间接地从Spring bean调用,例如作为控制器,服务或Quartz作业等的帮助者。让调用者在构造函数中将依赖关系(其他bean,ApplicationContext
等)传递给它,或者作为方法args,具体取决于&#39更方便。
如果使用依赖注入和/或传入注入的依赖项无法获得任何合理的工作,则可以始终违反DI和IoC并使用grails.util.Holders
反模式类并引入上下文或Spring豆子,但只有在没有适当的解决方案时才能这样做。