如果您计划仅具有一个(或只有几个)不太复杂的“扩展点”,那么定义良好的SPI和一项配置可能就足够了。无需使用插件框架。
通过配置,我的意思是找到插件的某种机制。例如,类似
meta-INF/services/或仅在配置文件中列出您的插件的内容。
更多详细信息(根据要求):
SPI = 服务提供者接口,“
API的实现者端等效”。要了解更多信息,请尝试寻找API和SPI之间的区别。但是,在这种情况下,这只是您的插件要实现的接口(即为您的插件定义合同)的幻想。
Ethan Nicholas 撰写的一篇不错的简短文章“
创建服务提供者接口
”描述了如何以与Java平台本身的多个部分相同的方式创建自己的SPI。
meta-INF/services/可以看作是创建SPI的更通用的方法。有关更多信息,请参见JAR文件规范的相应部分。



