前一段時間,曾不止一次的嘗試過,如何把一個分布式的maven項目,用IDE運行起來.連續的幾次失敗,讓我明白之前啟動的方式是有問題的.因此把正確的啟動方式整理了一下 .引以為戒
一.起初啟動失敗的原因
起初失敗的原因,我在啟動IDE中的項目 ,習慣於 Eclipse中的項目啟動方式混為一談,因為eclipse啟動maven,項目是需要install,之后使用jetty插件啟動所需要啟動的項目.但是在IDE中如果直接install就會直接拋出錯誤,然而這個錯誤,我直接查詢百度或者谷歌,也是看的比較迷糊的,所以之前啟動失敗錯誤幾次之后,我就一直懷疑是我的maven配置有問題,而不是懷疑我啟動存在問題.
啟動失敗的時候拋出的異常名字:MojoExecutionException


二.嘗試使用tomcat啟動項目,以及出現的問題
感覺相對於之前使用 eclipse來說 ,用IDE啟動項目要方便了許多 ,因為分布式項目 ,在eclipse中需要打包之后一個個開啟,相對來說IDE就容易了一些,啟動一個工程把所需要開啟的同時配置上,也不需要打包什么的,之后端口號配置好就可以運行了.但是比較讓人頭疼的就是編譯器的一些使用習慣差距還是比較大的.
我這邊使用的是java8,因此tomcat是直接從官網下載的tomcat1.85

因為我這邊運行的時候需要同時開啟service,所以在配置的時候 ,添加了兩個,一個是需要打開的主應用,另一個就是它的service.


注意那個存在多個依賴的話 Application context ,一定不要使用默認值 ,否則會提示錯誤的
之后就是開啟運行項目, 這邊運行之前除了一些問題,就是端口號不一致 ,與配置文件的不一致,就導致在加載的時候出現顯示的問題, 之后修改了一下.也就能正常開啟了.
三.為IDEA安裝Jetty插件,以配置Jetty出現的問題
相對於,使用tomcat開啟項目,使用jetty插件開啟項目,需要注意的可能會比較多一點,首先要保證,項目的pom.xml里面對jetty的支持與否,如果不支持的話,余下的環節也都無法進行.
使用IDE運行jetty有兩個環節
1.下載jetty到本地(這邊,這個和下載tomcat,maven什么的都一致,從官網下載 ,如果java版本比較高的話,盡量下載最新版本的jetty)
2.下載jetty runner插件並開啟

之后的開啟其實和,tomcat,差不多,但是有一點注意的是 ,tomcat啟動的時候有個單獨的項目端口號,但是在Jetty配置的時候展現方式可能有所不同,就在我下圖展示的地方 ,-Djetty.port=8060
這個是針對jetty啟動的項目端口號的配置

余下的依賴和tomcat寫法也是一致的.
四.嘗試使用jetty啟動項目,以及出現的問題
在配置的時候可能會報一個錯誤,就是 duplicate context path '/'的錯誤 ,這個是因為依賴里面的,如果依賴里面有多個依賴,都沒有沒有寫具體名稱,而是使用默認的'/'就會報這樣的錯誤, 我們把默認的名字修改下就可以 .
高版本的jetty,在啟動的時候會提示,讓你選擇module,實際上這里面我們不需要進行選擇,我們可以在

加上這樣的一行
--module=jmx

好了大功告成,對於我來說也是一種新得問題的解決吧,可能上面我省略了一些細節,你也可以像我一樣參考下面的一些文章,尋找你的答案吧
參考文章:
