【问题标题】:DOORS DXL include in batchmodeDOORS DXL 包含在批处理模式中
【发布时间】:2017-07-20 12:55:47
【问题描述】:

我正在尝试在 DOORS 批处理模式下运行 DXL 脚本,并且我想在通过批处理文件启动它时包含一个带有配置数据的文件

set exePath=%cd%
cd "C:\Program Files\IBM\Rational\DOORS\9.6\bin\"
doors -user "XXX" -password "YYY" -p %1 -b 
"Script.dxl" -dxl "#include <%exePath%>"

当我在 GUI 模式下启动 DOORS 时,我可以执行脚本,当我在批处理模式下启动它时,我收到一个奇怪的错误,提示类似

DOORS:断言失败,第 436 行,...,内部错误

我找不到解决办法,有人知道吗?

%exePath%是配置的dxl文件的路径

【问题讨论】:

    标签: ibm-doors


    【解决方案1】:
    1. 传递给 -dxl 的字符串中包含在变量 exePath 中的 \ 被 DOORS 解释为 转义字符。当您提供文件的路径时,请使用 正斜杠 (c:/my/dxl-dir) 或双反斜杠 (c:\\my\\dxl-dir)。
    2. Script.dxl 位于何处?我假设它位于脚本启动的目录中。 #include 命令将读取文件的内容并将#include 命令替换为内容。它不用于告诉 DOORS 脚本所在的位置。要告诉 DOORS 脚本所在的位置,您可以使用注册表设置、环境变量或命令行开关 -addins(或 -projectaddins 或 -layoutaddins)。
    3. 如果 Script.dxl 位于启动目录中,则根本不需要脚本顶部的“cd”。只需启动“c:\program files....\bin\doors.exe -b Script.dxl
    4. 并非每个脚本都以批处理模式运行。任何需要 GUI 功能的东西(例如视图)都将不起作用

    【讨论】:

    • 我想我发现问题出在包含时,当我尝试包含一个似乎根本不起作用的变量时,我不断收到 -E- DXL: <9>
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多