java - 在 Eclipse 中为嵌入式码头服务器开发战争的推荐方法是什么?
问题描述
我正在开发一组共享一些公共端点的独立应用程序。我设置它的方式是让每个应用程序成为一个独立的战争,并拥有一个提供这些公共端点的嵌入式码头服务器。嵌入式码头服务器设置端点并在启动时加载战争。我们的每个客户都会安装不同的应用程序,但总会有共同的部分,因此需要独立安装的应用程序大战。
这个基本架构工作正常,但在开发周期中,我需要构建每个应用程序战争,然后使用嵌入式码头服务器运行整个事情。我希望整个事情只是在对任何应用程序文件进行更改时自动部署。
关于如何做到这一点的任何想法?
解决方案
使用 aDeploymentManager
和 aWebAppProvider
来查找 webapps 并部署它们(它将在更改时自动重新部署)。
然后将您的部署设置为使用展开的 webapp 目录,而不是战争文件。
您甚至可以选择在一个地方设置部署 XML,指向每个 webapp 项目target/${project.build.finalName}
目录的内容(如果使用 maven)。
这适用于很多事情,但不是所有事情。
如果您更改类或库,则存在与内存泄漏和固定类加载器有关的一类问题,这可能导致您重新加载的 web 应用程序无法按预期运行。
见 https://www.eclipse.org/jetty/documentation/current/preventing-memory-leaks.html
推荐阅读
- python - 我有这个错误(NameError: name 'raw_input' is not defined)
- python - python片段的替代品
- sql - 如何从 SQL Server 分组的一列中找到最小值
- javascript - 正则表达式 | 限制可能的用户名
- mongodb - 如何根据条件查询mongdb中同一集合中存在的多个文档?
- c# - C# 套接字忽略了我的 SendTimeout 值
- python-3.x - 如何在 OpenCV 中获取 VideoCapture 对象的 4 字符编解码器代码?
- postgresql - TimescaleDb:有人能解释一下 Hypertables 的概念吗?
- python - 替换特定的 XML 属性值
- vue.js - 如何在组件之外使用 Vuesax $vs.loading