我們假設有2個應用程序。該POM層次結構可能是這樣的:如何在Maven 3多模塊項目中共享數據庫屬性?
parent
--> system A
--> system B
兩個系統都應該能夠連接到同一個數據庫。
每個系統有2個配置文件:發展(嵌入式DB)和生產(MySQL的)。
如何使用Maven的共享數據庫連接信息(用戶,路徑,驅動程序等),每個配置文件在兩個系統之間(我使用資源過濾)?
我們假設有2個應用程序。該POM層次結構可能是這樣的:如何在Maven 3多模塊項目中共享數據庫屬性?
parent
--> system A
--> system B
兩個系統都應該能夠連接到同一個數據庫。
每個系統有2個配置文件:發展(嵌入式DB)和生產(MySQL的)。
如何使用Maven的共享數據庫連接信息(用戶,路徑,驅動程序等),每個配置文件在兩個系統之間(我使用資源過濾)?
只是存儲的屬性,在適當的配置文件的信息。
確定數據庫連接信息的存儲位置時要小心。儘管可以在pom.xml中存儲驅動程序和URL(因此這些信息可能會到源代碼庫並且可以被任何獲得源代碼訪問權限的用戶訪問),但用戶名和密碼通常不應該公開。所以它們在settings.xml中更好地指定。當你使用生產數據庫時,這對你的情況尤其重要。 很好的解釋可以發現here
你是指在每個系統單獨(冗餘?)或在父pom(我認爲配置文件不會繼承)? – stephanos 2010-10-28 09:48:53
在根pom中定義配置文件,並在派生項目中使用set屬性(當然,只有在使用多模塊構建時)。 – khmarbaise 2010-10-28 11:53:02
只是試了一下:它的工作原理:) thx! – stephanos 2010-10-28 13:51:45