2015-03-31 78 views
0

我有多個WAR項目,每個WAR項目都包含一部分Web應用程序邏輯,例如:一個WAR將處理身份驗證,而另一個將專注於消息傳遞。我選擇這樣做,一次只關注單個應用程序(Separation of Concerns)。這些模塊中的一些(WAR's)依賴於其他模塊,但是我還沒有對依賴部分進行編碼(一旦它們「連接」,我可以允許它們進行適當的通信)。所以,我需要將這些不同的WAR包裝在一起。我相信我的選擇是:將多個項目打包成一個

  • EAR文件。這種方法的問題是EAR文件中的WAR不會在它們之間保持單個會話。
  • Maven。不幸的是,我對Maven幾乎沒有經驗。
  • 手動添加每個包到新的WAR。我將如何定義文件夾結構?單個源文件夾中包含多個源文件夾或多個包?

所以,我的問題:如何將多個項目打包成一個?

回答

0

Maven是一種正交於您的問題。

如果我是你,我會在單個源文件夾中構建一個包含所有源代碼的單個Web應用程序(WAR)。使用java package結構來分隔您的疑慮。這也將簡化您的開發過程。

如果java源文件的數量變大,您可以考慮將它們拆分爲jar項目並將隨後的jar文件添加到WAR文件的WEB-INF/lib目錄中。然後,Maven將有助於構建您的相關jar文件並組裝WAR。

而且請不要建立自己的認證子系統。您可以使用Container Managed Authentication,或者如果需要更復雜的Spring SecurityKey Cloak,其中任何一種都可以用零行代碼解決您的問題。

相關問題