我正在尝试为插件/应用程序创建一个框架,我想我已经决定在Java中使用服务提供程序接口(SPI)来实现这一目标。最终的愿景是人们可以下载插件(如应用程序商店),然后将罐子放入一个文件夹,他们将使用现有的程序。
所以我有一个班级PluginInterface
,这将是我的SPI。我希望所有插件都实现此类(它具有基本方法,如doesAccept
,handle
等)。由于第三方将创建服务提供者,如何让他们在他们的代码中引用这个Java接口(以便他们可以实现它),而不实际给他们主应用程序的源代码? < / p>
答案 0 :(得分:0)
创建两个JAR api和impl,将应用程序放在impl中,并将所需的代码与api中的第三方开发人员共享。
示例:jaxb-api.jar和jaxb-impl.jar