如何防止 Liberty 在重启后删除展开的文件夹

How do you prevent Liberty from deleting the expanded folder after a restart

我的server.xml有


...
< application context-root="BaseX" id="BaseX" name="BaseX" type="war" location="C:\Program Files\BaseX.war" / >

当我启动应用程序时

server start myapp

整个展开的文件夹被删除并重新创建。 WebSphere\Liberty\usr\servers\myapp\apps\expanded\BaseX.war

因为 BaseX.war 是我的数据库,我在简单的重新启动(停止和启动)后丢失了所有数据

目前实现此目的的最佳方法是将您的应用程序部署为扩展 WAR 而不是存档。而不是 WAR 存档 c:\Program Files\BaseX.war,您将有一个目录 c:\Program Files\BaseX.war 包含扩展的 BaseX.war 文件。在这种情况下,应用程序将直接从该目录 运行 而不会扩展到 apps/expanded。

您还可以通过将 applicationManager 元素上的 autoExpand 设置为 false 来关闭应用程序的扩展,但这对您来说可能不是一个好的解决方案,因为您是直接写入应用程序。如果您遵循此路径,您可能需要更改应用程序以将数据写入不同的位置。