4

我已经在许多其他应用程序中使用了 JDK 的SPI 机制,没有任何问题;但是,我似乎无法让它在 Grails 中工作。

我已经从静态初始化程序和类构造函数中尝试了通常的代码(如下所示),但都没有成功。

ServiceLoader loader = ServiceLoader.load(QueryEngine.class);
Iterator<QueryEngine> it = loader.iterator();

迭代器实际上并不遍历实现类。

我也试过:

ServiceLoader.load(QueryEngine.class, Thread.currentThread().getContextClassLoader());

它应该为当前类使用类加载器,但这也不起作用。

我应该使用其他一些机制来加载实现类吗?

4

0 回答 0