gpt4 book ai didi

java - Jetty - 对不同的应用程序版本使用符号链接(symbolic link)

转载 作者:行者123 更新时间:2023-11-30 04:27:01 24 4
gpt4 key购买 nike

我正在尝试配置jetty以在不同的应用程序文件夹之间切换。例如:我有 2 个应用程序文件夹(包含 WEB-INF、类、war 等)App1 和 App2。我想在 linux“myapp”中创建一个指向 App1 或 App2 的符号链接(symbolic link),并使用 http://host.com/myapp/resource 访问我的资源(即我的应用程序的 servlet)。 ...

我在 etc/webdefault.xml 文件中添加了以下几行来启用别名,但不起作用:

<servlet>
<servlet-name>default</servlet-name>
<servlet-class>org.eclipse.jetty.servlet.DefaultServlet</servlet-class>

<init-param>
<param-name>aliases</param-name>
<param-value>true</param-value>
</init-param>

</servlet>

有办法启用此行为吗?或者我需要另一种方法吗?基本上我需要一种快速的方法来在生产应用程序的版本之间切换,而不需要进行重大更改或重新启动服务器:)

最佳答案

使用 Context based deployment .

创建一个 ${jetty.home}/contexts/myapp.xml 并指定所需的映射。

<?xml version="1.0"  encoding="ISO-8859-1"?>
<!DOCTYPE Configure PUBLIC
"-//Mort Bay Consulting//DTD Configure//EN"
"http://jetty.mortbay.org/configure.dtd">
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
<Set name="contextPath">/myapp</Set>
<Set name="war"><SystemProperty name="jetty.home" default="."/>/webapps/App1</Set>
</Configure>

这使得上下文 /myapp 由您的 ${jetty.home}/webapps/App1 目录提供服务。

如果您仍然启用热部署(默认情况下启用)。然后只需编辑 ${jetty.home}/contexts/myapp.xml 并保存,jetty 将接受更改并提供新设置。

关于java - Jetty - 对不同的应用程序版本使用符号链接(symbolic link),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15617105/

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