簡體   English   中英

Spring依賴關系-org.springframework.boot與org.springframework

[英]Spring Dependencies - org.springframework.boot vs org.springframework

我很難確定是否需要在非共享啟動之類的非Spring引導應用程序模塊中使用org.springframework.boot依賴項,還是使用org.springframework依賴項和非spring依賴項

目前,我有3個項目:

parent/
|-- client
|   |-- pom.xml
|   |-- src
|-- domain
|   |-- pom.xml
|   |-- src
|-- server
|   |-- pom.xml
|   |-- src
|-- pom.xml

我的服務器是一個Spring Boot Application,用於服務網頁和用作RESTless API(通過使用兩個不同的HttpSecurity配置)。

我的客戶端是使用服務器 API服務的Spring Boot CommandLineRunner應用程序。

我創建了Domain模塊,以便客戶端服務器都可以訪問相同版本的JPA實體。


我不知道是什么時候使用org.springframework.boot依賴關系,什么時候使用org.springframework非spring依賴關系。

例如,在我的域模塊中。 我需要一些通常通過“ org.springframework.boot :: spring-boot-starter-jpa”和“ org.springframework.boot :: spring-boot-starter-security”獲得的依賴項。 但是由於域模塊不是Spring Boot應用程序。 我應該使用非spring-boot:“ org.spring.framework.security::spring-security-core”依賴關系和非spring依賴項“ javax.persistence :: persistence-api”嗎?

最佳做法是什么? 何時使用springframework.boot依賴項以及何時使用springframework和非spring依賴項? 同時盡可能靠近Spring。

如果需要,請使用springframework.boot依賴項,如果不需要,請不要使用它們。 就那么簡單。 共享庫通常不需要它們,但是確實需要它們。

請注意,盡管像其他人說過的那樣,您的maven pom父級並沒有真正告訴您您實際使用的依賴項,所以上面的段落中沒有提及任何內容。 建議使用相同的父項(與使用您模塊的應用程序一樣),因為它可以使依賴項版本保持同步,無論是引導還是非引導。 您說的是“通過spring-boot-starter-web,會啟動tomcat Web服務器”,但這只有在您具有啟動應用程序類並使用spring-boot插件的情況下才是正確的,對於共享庫,您將沒有或做。

總而言之,如果可以的話,請使用與打算使用您的庫的應用程序相同的父項。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM