0

11 目前正在将 ESQL 消息流和条形文件代码从 V7.1 迁移到 IIB9。为此,我需要将消息流转换为子流。然后为了在 mqsicreatebar 命令中创建 bar 文件,我选择了“deployAsSource”选项。创建 bar 文件后,我注意到我的 bar 文件包括所有 ESQL 和子流,它们是我在 mqsicreatebar 中提供的可编译主消息流的一部分。当我将此栏部署到执行组时,我注意到每个 ESQL 和子流也已部署。理想情况下,只有主消息流应该部署在执行组上。在此迁移期间有什么或选项没有选择,请提出建议。

4

1 回答 1

1

在工具包中,打开 Bar 编辑器。

在“准备”选项卡上,右侧是一个包含 4 个复选框的列表。其中之一是“编译和内联资源” - 检查这一点。

在主编辑器页面中,确保仅选择 msgflows。构建并保存。

当您查看 bar 文件时,您应该只有 CMF 文件。

编辑:OP 想使用 cmd 行来生成 bar 文件。这是我使用的一个命令:

mqsicreatebar -data C:\Users\Adam\IBM\IIBT10\workspace -b C:\Users\Adam\cmd.bar -p Foo -o /Foo/foo1.msgflow

mqsicreatebar 命令文档可能对您有用。

我认为deployAsSource在这种情况下使用该选项是一个错误。这是文档对该选项的看法。

-deployAsSource (可选)包含此参数以部署适用的资源文件而不编译它们。使用该-deployAsSource参数时,任何适用的资源都将作为源文件添加到 BAR 文件中,并且不会编译到消息流 .cmf 文件中。

您不能在 BAR 文件中同时包含消息流的编译 (.cmf) 和源 (.msgflow) 版本。

于 2016-03-26T20:10:23.817 回答