Java Scala-扫描包/文件夹以查找特性的实现

Java Scala-扫描包/文件夹以查找特性的实现,java,scala,reflection,Java,Scala,Reflection,如果你想知道是否有可能“扫描”实现某个特性的类,这些类位于pred定义的包和/或文件夹中。我的应用程序提供了一个可以实现的特性,在运行时以编程方式获取所有实现的列表,而不必首先“手动注册”每个实现,这将是一件好事 我找到了一个答案,被接受的答案建议使用ServiceLoader。但是,仍然需要在文本文件中列出可用的实现(META-INF/services) 我知道扫描所有类以查找特定类型可能会花费太多。但我认为,也许将搜索限制在某个包或文件夹会有所帮助?您可以使用或库,因为“实现特征的类”被编译

如果你想知道是否有可能“扫描”实现某个特性的类,这些类位于pred定义的包和/或文件夹中。我的应用程序提供了一个可以实现的特性,在运行时以编程方式获取所有实现的列表,而不必首先“手动注册”每个实现,这将是一件好事

我找到了一个答案,被接受的答案建议使用
ServiceLoader
。但是,仍然需要在文本文件中列出可用的实现(
META-INF/services

我知道扫描所有类以查找特定类型可能会花费太多。但我认为,也许将搜索限制在某个包或文件夹会有所帮助?

您可以使用或库,因为“实现特征的类”被编译为实现相应接口的类。另请参见和相关问题。

您可以使用或库,因为“实现特征的类”被编译为实现相应接口的类。另请参见和相关问题。

查看