我目前开始为我的硕士毕业论文开发一个新项目,这将是一个微服务项目(非常简短)。
由于我的团队已经为所有后端应用程序定义了架构(它们目前是单体应用程序),有没有一种方法可以“快速”为新微服务创建具有已定义架构的生成器?
如果这不可能,我正在考虑创建一个空白的基础项目,它将成为团队中任何微服务的起点。
我目前开始为我的硕士毕业论文开发一个新项目,这将是一个微服务项目(非常简短)。
由于我的团队已经为所有后端应用程序定义了架构(它们目前是单体应用程序),有没有一种方法可以“快速”为新微服务创建具有已定义架构的生成器?
如果这不可能,我正在考虑创建一个空白的基础项目,它将成为团队中任何微服务的起点。
我会说解决方案将取决于您的“空白基础项目”结构是什么。我可以想到两种可能符合您要求的可能性。
如果您只需要配置项目的某些方面,例如它的Maven坐标、构建工具、java 版本和Spring Boot Starters依赖项,那么您根本不需要基础项目。Spring Initializr项目是为您制作的。Spring Initializr是一种流行的服务,甚至是一个库,您可以根据自己的需要使用和扩展它。
您可以根据自己的需要自定义Spring Initializr服务,但这不是一条简单的路径。您可以在此处查看如何创建自己的服务。
我还按照相同的指南创建了我的自定义。我使用了官方服务application.yml的副本,添加了我的自定义启动器并实现了我自己的InitializrMetadataUpdateStrategy
以排除Spring快照。
如果您使用的是Maven ,那么您可以创建一个Maven 原型,我认为这会比处理Spring Initializr自定义更容易。
Maven 原型是一种项目的抽象,可以实例化为具体的定制 Maven 项目。简而言之,它是一个模板项目模板,从中创建其他项目。
本指南将教您如何创建自定义原型,然后如何使用它通过 maven-archetype-plugin 生成 Maven 项目。