oclif-dev manifest
将执行您的源代码,为什么会这样?
重现步骤:
- 跑
npx oclif multi mynewcli
index.ts
在根文件夹下创建一个文件src/app/index.ts
- 你放在文件
console.log("test...");
里面index.ts
- 将文件导入您的
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() {
}
}
- 现在你运行
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 库时这很奇怪。
当前的解决方案是将所有内容都写在一个函数中。