Spring Cloud 部署打包功能
Spring Cloud函数提供了一个“部署程序”库,通过该库,您可以使用隔离的类加载器启动jar文件(或爆炸档案或jar文件集),并公开其中定义的函数。这是一个非常强大的工具,例如,您可以在不更改目标jar文件的情况下,使功能适应各种不同的输入输出适配器。无服务器平台通常具有内置的这种功能,因此您可以将其视为此类平台中函数调用程序的构建块(实际上,Riff Java函数调用程序使用此库)。
API的标准入口点是Spring配置注释@EnableFunctionDeployer
。如果在Spring Boot应用程序中使用了该功能,则部署程序将启动并寻找某种配置以告知其在何处找到功能jar。至少,用户必须提供function.location
,它是包含功能的存档的URL或资源位置。
它可以选择使用maven:
前缀通过依赖关系查找来定位工件(有关完整详细信息,请参见FunctionProperties
)。从jar文件引导Spring Boot应用程序,并使用MANIFEST.MF
查找起始类,例如,使标准Spring Boot胖子jar可以很好地工作。
如果目标jar可以成功启动,则结果是在主应用程序的FunctionCatalog
中注册了一个函数。已注册的函数可以通过主应用程序中的代码来应用,即使它是在隔离的类加载器中创建的(通过deault实现)。
更多建议: