簡體   English   中英

執行嵌入式Jetty的最佳方法

[英]Best way to execute embedded Jetty

我有一個結構化為標准戰爭的Web應用程序。 我想將嵌入式Jetty服務器用作我的servlet容器。 由於這都是一個代碼庫,因此我認為執行Jetty服務器的main()也將與其余代碼發生沖突。

那么,如何執行我的main()來啟動Jetty服務器呢? 我查看了示例,但示例中沒有此設置,對我來說,這似乎是正常的設置。

是否需要告知Jetty服務器war文件在哪里(war文件恰好位於其所在的位置),還是Jetty默認情況下會找到並檢查WEB-INF以查找Jetty處理的各種XML文件?

我使用Jetty Maven插件看到了與之接近的東西,但共識是該插件不用於生產。

我能夠使用名為Jetty Console Maven插件的Maven插件輕松地設置可執行文件。關於如何在Internet上使用它的文檔很少。 作者simplercity記錄了如何使用它的博客條目。 但是我確實在stackoverflow上找到了一篇關於如何使用它的文章。

該插件的當前版本為1.55。 可以在這里找到。 我遇到的一個問題是,盡管此插件所需的大多數工件都在1.55版上,但其中一個碼頭(jetty-console-ajp-plugin)在1.53版上。 這給我造成了一個問題,因為當我將所有其他插件設置為1.55時,在嘗試執行戰爭時遇到了簽名者異常錯誤。 我在這個stackoverflow答案中找到了解決方案。 解決方法是僅使用所有插件的1.53版本。 可能有更好的解決方案,允許您將1.55與1.53 ajp-plugin一起使用。 除此之外,該插件還不錯,我懇請Jetty Console Maven插件的作者撰寫有關如何使用它的博客文章進行備份,或為其創建新文檔。

要在Java中執行獨立的應用程序,不必費勁。 一個罐子足夠好了。 戰爭包含有關如何將Web存檔/應用程序部署到J2EE容器中的信息。 當您獨立運行它時,這不是必需的。 主要方法就足夠了。 您可以看看maven shade plugin 它將幫助您構建可運行的jar。

(作為附帶說明,可運行的jar是一件相當簡單的事情。jar文件的清單文件需要包含鍵MainClass就是這樣。)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM