如何使用弹簧靴制作一个通用库

2022-08-31 16:33:00

现在我想为我们的系统开发一个通用的邮件服务。在我们设计时,我们希望开发生产者和消费者。在消费者端,我们可以开发和部署一个或应用程序,但在生产者端,我们希望提供一个像下面接口这样的通用邮件客户端,并为其他系统提供一个jar依赖项。RabbitMQSpring BootSpring Cloud

interface MailClient {
  ListentableFuture send(Message message);
}

但是我看到spring boot和spring cloud使用许多声明性方法,似乎必须使用应用程序类,但我只是想要一个类引用,不需要部署。我不知道如何实现它。


答案 1

Spring Lemon就是一个很好的例子。它使用Spring Boot,并且旨在包含在其他Spring Boot应用程序中。这就是我们为创建它所做的:

  1. 使用 STS 的 Spring Boot Starter Wizard 创建了一个 Spring Boot 应用程序。
  2. 删除了生成的应用程序和测试类。
  3. 删除了,即pom.xml中的构建插件存储库部分。(看看没有这些部分的pom.xml会是什么样子)。spring-boot-maven-plugin

答案 2

Spring 文档准确地解决了这个问题,并显示了使用/for Spring boot 实现通用库的正确方法:

https://spring.io/guides/gs/multi-module/

如文档所述:尽管未使用Spring Boot Maven插件,但您确实希望利用Spring Boot依赖关系管理


推荐