2012-08-17 60 views
4

我正在努力理解部署具有工作鏈接的多模塊maven站點的複雜性。由於我使用maven-scm-provider-hg部署到Google Code,這一事實很複雜。默認情況下,爲多模塊站點始終部署分段站點?

根據文檔,我應該運行mvn site:site site:stage以獲得完整的工作網站。但是,當我運行mvn site:deploy時,它會部署除映像和css文件夾之外爲空的父pom站點。

接下來我試試mvn site:stage-deploy。這樣做會失敗,因爲它會將staging/添加到網址,因爲我使用Google代碼會導致錯誤,因爲http://code.google.com/p/myproject.site/staging不是存儲庫。這也不是一個長期的解決方案,因爲我非常確定maven release插件運行site:site

使用工作鏈接部署完整多模塊站點的正式方法是什麼?

+0

至少,我可以說的是,mvn網站:stage會在本地部署,AS在製作中(如http://code.google.com/p/myproject.site)。登臺是一種方便查看(站點)發生的情況的便捷方式:部署。這是測試全功能網站的正確方法(帶有工作鏈接)。這不適合生產部署。 – 2012-08-18 13:59:22

+0

另外,mvn site:deploy會遞歸地部署所有的子集......我無法解釋什麼是oo。考慮你主要的POM應該有一些一般的信息。這可能的確是主要網站 – 2012-08-18 14:16:01

+0

您能向我們展示您的distributionManagement部分的內容嗎?順便說一句,您是否嘗試將$ stagingSiteURL值設置爲http://code.google.com/p/myproject.site? – poussma 2012-08-22 07:32:04

回答

0

爲了在一切準備就緒的情況下運行多模塊構建的網站構建,您必須運行網站生命週期階段網站部署,而不僅僅是網站插件目標。

所以我會跑

mvn clean install site-deploy 

或文物的部署與本站

mvn clean deploy site-deploy 

當然,你必須有設置在分配管理方面是正確的。除此之外,您希望確保所有模塊都具有與其artifactId相同的目錄名稱,並且您已按照網站插件網站上記錄的相應鏈接等設置了site.xml。

根據站點部署協議,你可能還需要添加一個新建擴建(例如,如果您使用DAV)

這當然需要一些擺弄,但它的工作原理。另外我會推薦使用最新版本的網站插件(3.1)和Maven(3.0.4)。

相關問題