1

oclif-dev manifest将执行您的源代码,为什么会这样?

重现步骤:

  1. npx oclif multi mynewcli
  2. index.ts在根文件夹下创建一个文件src/app/index.ts
  3. 你放在文件console.log("test...");里面index.ts
  4. 将文件导入您的src/commands/hello.ts
import { Command } from "@oclif/command";
import * as fs from "fs-extra";
+ import "../app/index";

export default class extends Command {
  async run() {
  }
}
  1. 现在你运行yarn run prepack,终端显示
mynewcli % yarn run prepack
yarn run v1.22.4
$ rm -rf lib && tsc -b && oclif-dev manifest && oclif-dev readme
test...

我认为 oclif 只会编译你的源代码,结果它会执行它,当你构建一个 npm 库时这很奇怪。

当前的解决方案是将所有内容都写在一个函数中。

4

0 回答 0