我有一个用例,其中我想提供一个简单的API来扩展我的Scala应用程序的功能。
我花了最后两天的时间来寻找一个能为我做以下事情的java / scala DI框架或库:
我越来越喜欢OSGi DS,我非常喜欢OSGi DS,但由于#4,我认为它太过分了。
我看着guice,weld,scaladi和macwire,却无法立即看到执行此操作的简单方法。我的目标是使“插件”作者不必以任何方式了解我的注入/ IoC解决方案,除了偶尔的Annotation(最好是JSR330),我愿意在注入站点处理较丑的事情。:-)
我是否需要在这里推出自己的解决方案,使用OSGi,还是在上述库中缺少一些琐碎的内容?
ps:我之所以试图避开OSGi,主要是因为它与我正在使用的应用程序框架进行了交互(akka-不确定bundle / DS生命周期是否与单个actor系统很好地融合)
如果您能负担得起,那么(最好是对您来说,对整个生态系统而言)最好与Peter的建议相吻合。
从实用的角度来讲,Java具有OOTB附带的SPI,对于您的特定情况,它可能是最简单的方法。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句