有许多名为spring-boot-starter-*的Maven工件。顾名思义,它们对于应用程序项目启动Spring非常有用。
然而,在应用程序项目稳定之后,应该继续使用这些spring-boot-starter-***?**吗?
我担心这样做使用了Maven机制“传递依赖”,这似乎违反了Maven文档中的建议。
虽然传递依赖项可以隐式地包含所需的依赖项,但是在您自己的源代码中显式指定直接使用的依赖项是一种很好的做法。
例如,假设应用程序项目直接使用Spring注释@EventListener。注释在Maven工件spring-context中,spring-context包含在spring-boot-starter中。应用程序项目应该在稳定之后直接指定对spring-context的依赖吗?
发布于 2020-04-30 01:47:19
工件只是一次包含多个Spring工件的缩写。我的公司在生产中有使用起动机工件的服务。当然,您可以用包含的工件列表替换每个启动程序,但我认为Maven建议更多的是关于无关的传递依赖关系,比如应用程序是否将某个JSON库中的Guava继承为一个传递依赖项。
当传递依赖项都来自同一个源并设计为协同工作时,我不认为这是一个问题。至少,我不这么认为。
https://stackoverflow.com/questions/61514424
复制相似问题