【发布时间】:2021-04-30 16:48:38
【问题描述】:
我有三个包:
-
A,取决于C -
B,取决于C C
使用 lerna run build 时,C 在 A 和 B 之前构建(好!)
但是当我开始监视任务lerna run watch,C 永远不会完成,因此A 和B 不会被监视。
使用lerna run watch --parallel 同时启动A、B 和C,但A 和B 都抛出错误,因为它们无法从C 找到dist 文件夹(其中C只是在重建之前删除)。
有什么方法可以启动监视任务,但仍然像正常运行一样保持依赖关系的顺序?或者至少延迟一些其他的?
【问题讨论】:
-
我认为
parallel不保证构建过程的顺序。 -
这能回答你的问题吗? Lerna specify run order
-
没有怎么办?使用并行会导致上述问题。在观看
C时不使用并行结果,但从不观看A和B,因为C的观看任务永远不会完成 -
也许没有办法做到这一点。最后我先看了
C,然后是其余的。另一种解决方案是确保在构建时 dist 不会被删除,但事件最初没有 dist,因此需要在 watch 之前完成构建。 -
我认为它是这样回答的:"类似于
--stream,但完全不考虑并发和拓扑排序,在所有匹配的包中立即运行给定的命令或脚本,并带有前缀流输出。”
标签: javascript node.js angular lerna