我想使用一些现有的库进行类路径扫描。extcos
似乎是一个很好的候选者,因为它开箱即用地支持JBoss的VFS。
是否可以运行extcos
(或其他类路径扫描工具)
- 支持基于FS、基于JAR和JBoss的基于VFS的类路径
- 并且只加载与特定模式匹配的类(如
com.example.*.entity
)
extcos
似乎已经满足了第一个先决条件,但我无法获得第二个。可能我在com.example
包中有一些奇怪的类,我不想加载它们,甚至不想尝试。
对于extcos(可扩展组件扫描程序,http://extcos.sf.net):正如你正确地提到的,第一个得到了支持,但第二个目前还不可能。然而,这是一个好主意,所以我会考虑将其作为一个要添加的功能。
我决定使用Spring的应用程序上下文类路径扫描(即资源加载)功能。这至少可以开箱即用地处理基于FS(文件系统)和Jar的类路径。
在JBoss5+上,我使用Snowdrop的应用程序上下文实现,该实现为应用程序透明地添加了VFS支持。
由于我使用的是按模式加载资源,所以我可以免费获得包过滤,甚至类名过滤。