gpt4 book ai didi

java - war 文件的 jetty 9.x 基本目录的最小文件集是什么?

转载 作者:太空宇宙 更新时间:2023-11-04 14:30:43 24 4
gpt4 key购买 nike

根据http://www.eclipse.org/jetty/documentation/current/quickstart-running-jetty.html可以在 jetty 9.x 的基本目录中管理 Web 应用程序。该指南解释了可以放入其中的内容,并通过指向二进制发行版中的 demo-base 目录给出了示例。然而,指出这样的 jetty 基地实际需要什么才能成功部署是有用的,例如这样

cd /path/to/my-base/
java -jar ~/jetty-distribution-9.2.3.v20140905/start.jar jetty.home=~/jetty-distribution-9.2.3.v20140905/ jetty.base=.

成功。将最小的有效 war 文件(只有一个 jsf 文件)放入 /path/to/my-base/path/to/my-base/webapps/ 失败,并显示警告:没有任何内容可以启动,正在退出...,尽管部署一个最小的应用程序或显示需要添加的有用警告是有意义的。

需要添加什么才能从单独的基目录部署应用程序?

最佳答案

Jetty 可以通过 start.jar 的标志为您实现此目的

文档中有一个示例,此处:http://www.eclipse.org/jetty/documentation/9.3.0.v20150612/quickstart-running-jetty.html

“以下命令:创建一个新的基目录;启用 HTTP 连接器和 Web 应用程序部署程序;复制要部署的演示 Web 应用程序。

简化:

mkdir /home/me/mybase
cd /home/me/mybase
java -jar $JETTY_HOME/start.jar --add-to-startd=http,deploy

然后复制你的war,如果你使用ROOT.war,它将映射到/,并启动jetty:

cp my.war webapps/ROOT.war
java -jar $JETTY_HOME/start.jar

或者,如果您安装了 docker,您也可以通过复制它来获取官方设置,如下所示:

首先,让docker下载并运行jetty,将主机上的目录映射到docker容器。我已经在映射 Web 应用程序,所以我只是继续使用该映射。完成后会删除容器(-rm),因此它是干净的,并启动一个交互式 bash shell,将您直接登录到一个官方的准系统 jetty 容器,该容器已准备好将 wars 部署到 webapps 目录中(正是我们想要的!)

sudo docker run --rm -it -v /home/myuser/jetty/webapps:/var/lib/jetty/webapps jetty:latest /bin/bash

如果您在容器上运行 env ,您将看到:

JETTY_BASE=/var/lib/jetty

只需 tar 这个库,将 tar 复制到 webapps 目录(映射回本地主机),然后退出。 (随意贴图

root@f99cc00c9c77:/var/lib# tar -czvf ../jetty-base.tar.gz .
root@f99cc00c9c77:/var/lib# cp ../jetty-base.tar.gz jetty/webapps/
root@f99cc00c9c77:/var/lib# exit

回到本地主机,你就有了官方 jetty 基地的 tar ! docker 容器应该在退出时停止,您可以使用 sudo docker ps 进行测试,它应该显示一个空列表(仅标题)。

为了完成此操作,返回主机,创建一个基本目录(当然是 myuser,而不是 root):

mkdir ~/jetty/localbase
cp ~/jetty/jetty-base.tar.gz ~/jetty/localbase/
cd ~/jetty/localbase/
tar xvzf jetty-base.tar.gz

然后像以前一样启动它:

java -jar $JETTY_HOME/start.jar

关于java - war 文件的 jetty 9.x 基本目录的最小文件集是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26193471/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com