1. 程式人生 > 實用技巧 >maven多模組eclipse jetty熱部署

maven多模組eclipse jetty熱部署

2019獨角獸企業重金招聘Python工程師標準>>> hot3.png

想必用過maven的同學都用過maven的多模組功能,多個模組對於解耦和複用程式碼非常有幫助,使用多模組也易於理解和維護。但是使用多模組在開發過程中也有一些不便之處,比如web模組A以jar包方式依賴模組B,此時如果修改了B,往往需要install B,重啟A才能讓A引用新的B。如果A專案依賴少,啟動時間比較少還好,但是大的應用往往需要幾十秒甚至幾分鐘才能啟動完成,這樣開發效率就大大降低了。 解決這個問題的方法,無非就是在A內對重新編譯的B進行熱更新,可是A又是以jar包依賴的B,這就比較麻煩了。 一個辦法就是把專案的maven屬性"Resovle > 這裡輸入引用文字dependencies from Workspace projects"勾選上。

這樣maven依賴的就不是B打成的jar包而是在workspace中B編譯而成的class檔案。如果專案比較獨立,依賴專案比較少,可以用這種方法。但是專案依賴如果很複雜,有一些依賴不想用本地workspace中的呢? 另一個辦法也是仿照第一個方法,我們假設在eclipse中使用的是RunJettyRun外掛。 在Webapp Classpath中,取消勾選依賴B。

輸入圖片說明 點選右側的Add Projects,新增依賴B對應的project,並只勾選target\classes,如此即可(也可以Add External Folder 直接新增classes資料夾)

輸入圖片說明 如果class檔案不能熱更新,可以在程式引數中新增springloaded(或者jrebel)

-javaagent:E:/Work/springloaded-1.2.3.RELEASE.jar -noverify

輸入圖片說明

轉載於:https://my.oschina.net/bfleeee/blog/510089