【问题标题】:updateapplicationserver ant task always fail with "WAR file is not currently deployed"updateapplicationserver ant 任务总是失败,并显示“当前未部署 WAR 文件”
【发布时间】:2015-12-12 08:41:56
【问题描述】:

我使用了一个从示例 configure-was-derby.xml 中提取的非常基本的构建文件:

<property name="worklight.server.install.dir" value="C:/Worklight70"/>
<property name="config.migration.tool.enable" value="true"/>
<target name="minimal-update">
<updateapplicationserver id="" contextroot="/AreaClienti">
<project warfile="C:/temp/AreaClienti.war"/>
<applicationserver>
<websphereapplicationserver installdir="C:/WebSphere85/AppServer"/" profile="AppSrv01" user="wasuser" password="xxxxx">
<server name="server1"/>
</websphereapplicationserver>
</applicationserver>
</updateapplicationserver>
</target>

最近在我的笔记本电脑安装上能够重现该问题,我相信我找到了原因:请查看以下分析并确认结果。

我最初从 WAS 管理控制台手动安装了 war 文件,当我使用上述构建文件运行 Ant minimal-update 时,它失败并出现上述错误

MobileFirst 项目 WAR 文件当前未部署在 WAS 中 简介...

然后我删除了手动安装的战争文件并使用 Ant install 目标重新安装它。 此时minimal-update运行成功。

我发现 Ant 安装创建到 WAS 配置结构中

profile_root/config/cells/cell_name/nodes/node_name/servers/server1

一个新的 Worklight 目录,其中包含 worklight-jee-library.jar 文件和一个带有 derby 驱动程序 jar 的 derby 子目录。 p>

显然 minimal-update Ant 任务对 Worklight 目录 的存在进行了初步检查,如果它丢失,它会失败。 你能确认这是真的吗?

当然,Worklight 目录 不是由标准 WAS 安装过程创建的。 因此,在控制台安装运行时战争之后,Ant minimal-update 总是失败!

如果我在 WAS 配置中手动添加 Worklight 目录,那么 Ant 最小更新开始运行得很好。 恕我直言,以这种方式更改标准 WAS 配置结构不是很干净。 话虽如此,如果我们最初使用标准 WAS 管理程序安装运行时战争,这是一种有效的解决方法吗?

此外,返回的错误消息也可能更清楚一点:如果有任何调试选项可以让 Ant 任务更详细,请告诉我。

最后,让我再问一个问题。

我注意到 Ant 执行在目录中写入日志文件

user_root/.mobilefirst_platform_server

有没有办法将这些日志重定向到不同的目录以避免填满用户根目录的风险?

【问题讨论】:

  • 您能否在您调用updateapplicationserver 的XML 段中编辑您的问题(不暴露任何机密)?也许我们可以发现问题所在。

标签: ant ibm-mobilefirst


【解决方案1】:

显然,最小更新 Ant 任务对 Worklight 目录的存在进行了初步检查,如果它丢失,它将失败。你能确认这是真的吗?

没错。

有没有办法将这些日志重定向到不同的目录以避免填满用户根目录的风险?

很遗憾没有。

【讨论】:

    猜你喜欢
    • 2016-08-04
    • 2014-07-03
    • 1970-01-01
    • 2016-10-24
    • 1970-01-01
    • 1970-01-01
    • 2018-09-13
    • 2014-07-25
    • 1970-01-01
    相关资源
    最近更新 更多