在 Java 中开发一个简单的插件模块化 rest 可达服务

Develop a simple plugin modular rest reachable service in Java

我想开发一个服务,它公开一个休息 API 来上传插件,并且插件是本地可执行的,即来自服务器的其他 classes 使用它们。

插件还有:

问题是我不确定从哪里开始,因为我已经在 Spring-boot 上开发了一些基本的 API 因为它有我需要的所有东西来轻松开发一个 REST API 但我越了解如何动态加载模块(插件),我就越发现 Spring 不支持这种东西,我不确定 class 加载器或服务加载器将在该上下文中工作。

我发现了 OSGi 框架,但老实说我不知道​​它改变整个技术堆栈会对我有所帮助,所以我想确保它是正确的答案,如果是,那么找到一些指向我的资源正确的方向,例如一些实现类似内容的教程。

感谢您的任何建议。

OSGi 听起来最适合您的尝试。

您可以捆绑安装所有内容,包括您的主应用程序。现在这比几年前少了很多工作,但仍然不容小觑。

另一种选择是启动一个嵌入式 OSGi 框架,您只需在其中安装插件。这是较少的工作,但你需要确切地知道它是如何工作的。

因此,对于这两种情况,我建议从外部 OSGi 专家那里获得帮助,因为它可以大大加快转换速度并避免您作为初学者选择的许多错误路径。

结帐OSGi enRoute. It includes a model to developing RESTful services: http://enroute.osgi.org/services/osgi.enroute.rest.api.html