上下文: 我们在 Linux 系统上运行的 Tomcat (v7.0.57) 上使用 MFP v6.3。我们正在尝试使用 MFP ANT 任务来自动部署 MFP 工件(即 WAR 文件、适配器和 wlapps 文件)。具体来说,我们有一个用例,我们希望使用 updateApplicationServer ANT 任务来更新最初使用 MFP 的 configurationTool.sh 部署的 WAR 文件。
问题: updateApplicationServer ANT 任务执行时没有任何错误,我们可以看到 Tomcat 服务器上的 WAR 文件确实被新文件替换了。但是,Tomcat/MFP 并未加载 WAR 中新的和更新的 Java 代码。我们注意到,在执行 updateApplicationServer ANT 任务后,WAR 文件的内容没有被分解(即使 autodeploy 和 unpackWARs 标志设置为 true)。只有重新启动 Tomcat 服务器后,应用程序才能使用 WAR 中的新代码。从 KnowledgeCenter 上的 MFP 文档中,我们的印象是 updateApplicationServer ANT 任务不需要重新启动服务器来更新相应的 WAR 文件。我们期待 updateApplicationServer ANT 任务更新 WAR 并使其立即可用于 MFP 移动应用程序客户端。
代码: 我们使用 Gradle 来调用 updateApplicationServer ANT 任务:
ant.updateApplicationServer(contextroot: contextRoot) {
"project"(warfile: warFile)
"applicationserver"() {
"tomcat"(installdir: installDir)
}
}