代码之家  ›  专栏  ›  技术社区  ›  jeanpaul62

LERNA指定运行顺序

  •  6
  • jeanpaul62  · 技术社区  · 6 年前

    在我的Monorepo里,我有三个包裹 package1 , package2 , package3 ,每个包都包含一个名为 build .

    但是,这些包没有链接在一起。也就是说,没有 require() 在任何一个链接到兄弟包的包中。

    从根文件夹,我运行 lerna run build . 好像在跑 建造 按字母顺序排列的包裹。

    是否有方法指定运行 建造 这些包的命令?

    --sort 不会工作,因为他们没有联系。

    1 回复  |  直到 6 年前
        1
  •  2
  •   Marco Scabbiolo Tatsiana    6 年前

    如果不指定顺序,则通过将包作为另一个包的依赖项来指定拓扑。

    如果 package1 需要在之前建造 package2 你加 包装1 对…的依赖 包装2 在后者中 package.json 文件。如果你不想 包装2 直接依靠 包装1 (例如,在生产上)您仍然可以将其添加到 devDependencies 勒纳会理解这种依赖。

    lerna -h :

    --从拓扑上对排序包进行排序(从属项之前的依赖项)。 通过——没有可禁用的排序。[布尔值][默认值:真]

    注释 有些命令可以忽略这个拓扑,例如来自 lerna exec's --parallel option documentation :

    完全忽略并发性和拓扑排序

    推荐文章