2016-03-23 45 views
1

我一直在努力嘗試部署一個簡單的HelloWorld webservice在Windows 7(後來生病需要在Linux)電腦上用java寫的。使用碼頭運行球衣2服務器9

我發現的大部分例子(來自一般地方,以及其他在stackoverflow上的questetions)都沒有工作,或者使用了不推薦使用的球衣和其他圖書館版本。

我的目標是在java中編寫一個webservice,編碼應該很簡單,部署它也是如此。它不需要任何關於請求運行和性能的特殊要求(我的要求是最小的)

Frommy研究,我開始相信使用嵌入式netty web服務的澤西應該激起我在尋找的東西

:對(如果有人知道更好,我也想聽聽它,堅韌,這不是我在這個questetion主要問題,但可能只是一個替代解決方案)

我也碰到這個eaxmple來到jersey2-jetty-example

它給你一個工作項目從maven運行澤西島和碼頭嵌入式服務器(它可以作爲一個獨立的jar運行,這正是那種易於部署即時通訊尋找)所需的依賴關係

我克隆了這個例子,並讓一切運行。我有問題,將其導入到eclipse,所以我用的例子文件夾下面的命令:

MVN -DoutputDirectory =/lib下的依賴:複製依賴

,這將給你的lib文件夾的副本從maven需要, 然後我創建了這個lib文件夾中的構建路徑和樣本相同的源代碼的Java項目,並且都運行良好。 當我嘗試將此java項目導出爲可運行jar(包含源文件選項!)時,會發生此問題。 然後我可以使用java -jar來運行該服務,但是當我嘗試從瀏覽器訪問它時(與從eclipse運行時使用的相同),它永遠不會運行,我總是會得到相同路由的錯誤404當從eclipse運行時第二次工作。我無法弄清楚問題的根源是什麼,或者什麼eclipse做了不同的事情,從而以不同的方式表現出來。

回答

1

我發現jar在Eclipse沒有工作的時候沒有工作,這是因爲我導入了一個重複的jar導致了問題。我從git樣品中得到的罐子有2個重複的罐子,稱爲hamcrest-all和hamcrest-core。從項目構建路徑中刪除其中的一個修復了問題。

如果有人可以回答我問的其他開放式問題,如果使用像這樣的澤西島和碼頭是我的需求的最佳解決方案,我將很樂意聽到它

相關問題