【问题标题】:IBM Worklight - How to retrieve an already-deployed .wlapp file?IBM Worklight - 如何检索已部署的 .wlapp 文件?
【发布时间】:2025-12-28 11:25:06
【问题描述】:

我有一个已经在运行的 Worklight 应用程序。我们计划明天转移到另一个生产集群,但我想获取已经部署在第一个集群上的旧 .wlapp。

我怎样才能得到它?我可以在 WebSphere 应用程序服务器的临时文件中找到一个目录,但它是展开形式的。当我压缩其中一个并将其转换为 .wlapp 时,在部署成功的同时,我有一个直接更新并且应用程序无法启动...

这条路是对的吗?

【问题讨论】:

  • 有什么理由不能只重建 WL 项目并从 bin 中获取新的 wlapps?

标签: ibm-mobilefirst worklight-server


【解决方案1】:

当您在 Worklight Studio 中构建应用程序时,构建会生成 .wlapp 文件并将它们存储在 yourProject\bin 文件夹中,这些文件不会从 bin 文件夹中删除,除非您手动删除它们。

  • appname-envname-version.wlapp
  • appname-common-version.wlapp
  • appname-all.wlapp

version 值的变化取决于您在 yourProject\yourApp\application-descriptor.xml 中设置的值。

一个好的做法是备份不同版本的工件以及项目源代码(使用源代码控制系统...),这样您就可以随时恢复任何版本...尤其是。如果您说的是已经投入生产......


部署后,.wlapp 文件不是存储在文件系统中,而是存储在数据库中。

如果您没有有备份(这很糟糕,顺便说一句),那么对于检索以前部署的 .wlapp 文件,这些文件存储在您的数据库中 APP_SYNC_DATA 表中的 @987654325 @ 柱子。您可以尝试将与您相关的 APP_SYNC_DATA.deployable 数据提取并保存为 .wlapp 文件。

但这并不能保证它会比您的其他尝试更好地“工作”。那个 .wlapp 被配置为使用某些服务器 URL,如果这个新集群不是以前集群的副本,我也看不到这个工作......但是,在不知道更多关于你得到的错误的情况下,谁知道它们之间的关系(但这不适用于这个问题)。

【讨论】:

  • 是的,事实上该应用程序正在生产中,我通过直接更新发布了许多版本的 iphone-1.0。我在本地构建了另一个版本,忘记备份最后部署的 iphone wlapp。现在,当切换到新服务器时,我想保留相同的部署 wlapp。这可能吗?