当你使用ServiceLoader.load无法加载类时你可能犯

2021-11-30  本文已影响0人  逐影随行

问题描述
项目采用maven结构,其中的resources里结构如下


image.png

结果如下代码无法获取到相关的类
ServiceLoader<DynamicSql> load = ServiceLoader.load(DynamicSql.class);
for (DynamicSql dynamicSql : load) {
System.out.println(dynamicSql.getClass());
}

解决方案
改为如下结构就好了


image.png

问题出现的原因是:创建Directory时用点号隔开了 META-INFO.services ,结果META-INFO.services 整个变成了文件夹名称。

上一篇下一篇

猜你喜欢

热点阅读