[英]What else can be used in Java as the ServiceLoader alternative?
我正在寻找类似ServiceLoader的东西,但它不依赖于SPI文件,其中应枚举所有服务实现,然后将其添加到某个类加载器的路径中,以便找到它。
假设有一个应用程序,它具有接口和服务的一些实现。 可以使用什么框架,允许您向应用程序添加新的JAR,其中包含一些新的实现,并且它们可以自动添加到该应用程序内所有类加载器的类路径中? 所有类加载器在这里都非常重要,因为如果这是一个NetBeans模块应用程序,那么NetBeans平台就会产生奇怪的魔力并且您永远不知道哪个类加载器被哪个线程使用,哪个类路径等...它也会很棒,如果不需要重新启动应用程序来查找新的JAR,但这不是一个重要的要求。
我已经听说过OSGi,但这看起来太大了,我只需要1%的功能。
谢谢你的任何建议!
似乎您正在寻找Netbeans Lookup API - Link
一个较新的选择(这是一个老问题)可能是sezpoz 。
它与JDK ServiceLoader非常相似,它使用META-INF
资源查找,但资源是由注释处理器自动创建的。 因此,它的注释很重,并且通常以后期处理为代价更安全。 它由Hudson / Jenkins使用。
我相信Kohsuke是第一个提出这个注释处理理念的人: http : //metainf-services.kohsuke.org/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.