EN
← 错误索引

F_SYSTEM_DUPLICATE_COMMAND_TOKEN

命令 token 重复

两个已注册命令使用了相同的名称或 alias。

更新于 2周前

复现

命令名称和 alias 共用一个应用级命名空间:

src/commands.ts
import { Command, Container, Handler } from 'func'

@Command({ name: 'build' })
class BuildCommand {
  @Handler()
  run() {}
}

@Command({ name: 'build' })
class RebuildCommand {
  @Handler()
  run() {}
}

new Container([BuildCommand, RebuildCommand])

如何修复

确保每个命令名称和 alias 都是唯一的:

src/commands.ts
@Command({ name: 'build' })
class BuildCommand {
  @Handler()
  run() {}
}

@Command({ name: 'rebuild' })
class RebuildCommand {
  @Handler()
  run() {}
}

new Container([BuildCommand, RebuildCommand])