我的 tcl 代码中有这样一行:
Application/BitTorrent set seqNo_ $opt(seqNo)
..我有一个 OTcl 类名“Application/BitTorrent”,我收到这个错误...
无效的命令名称“应用程序/BitTorrent” 在执行时 “应用程序/BitTorrent 设置 seqNo_ $opt(seqNo)”
谁能告诉我错误可能在哪里?
谢谢!
我不想成为一个指出显而易见的人,但错误正是消息所说的:在引发错误时,没有名为“Application/BitTorrent”的命令。
这可能意味着以下三件事之一:命令名称拼写错误,命令尚未创建或已被销毁,或者它存在但在当前上下文中不可见(例如,它存在于其他命名空间中或尚未导入的包或文件)。
除了 Bryan Oakey 指出的可能性之外,也许您ns
针对您的脚本运行了错误的可执行文件副本。例如,您可能实际上是在使用/usr/bin/ns
而不是在您的应用程序代码中编译的那个(通常/ns-all-in-one/bin/ns
)。要检查 bash 下是否是这种情况,请使用
type ns
如果确实如此,而那个在 中领先$PATH
,那么这意味着 bash 中的命令散列已过时。您可以使用hash -d ns
删除旧缓存。