企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
1. 在 `classpath` 下的 `META-INF/services` 目录里创建一个以服务接口命名的文件,这个文件里的内容就是这个接口具体的实现类。 2. 接口实现类所在的 jar 包放在主程序的 `classpath` 中。 3. 主程序通过 `java.util.ServiceLoader` 动态装载实现模块,它通过扫描 `META-INF/services` 目录下的配置文件找到实现类的全限定名,把类加载到 `JVM`。 4. SPI 的实现类必须携带一个无参构造方法,因为使用 `ServiceLoader` 进行服务加载的时候用的是无参构造方法。