6

我的结构如下:

  • 包.json
  • lerna.json
    • myproj-util
      • 包.json
    • myproj-模式
      • package.json -- 有开发依赖myproj-util

这两个项目都还没有发布到 npm。

当我跑步时,lerna boostrap我得到:

❯ lerna bootstrap
lerna info version 2.4.0
lerna info versioning independent
lerna info Bootstrapping 2 packages
lerna info lifecycle preinstall
lerna info Installing external dependencies
lerna ERR! execute callback with error
lerna ERR! Error: Command failed: npm install
lerna ERR! npm ERR! code E404
lerna ERR! npm ERR! 404 Not Found: myproj-util@*

我对文档的理解是,在运行时lerna bootstrap它应该“检查每个依赖项是否是 Lerna repo 的一部分”,所以它应该只是符号链接。

那么......为什么不只是符号链接我的内部依赖?依赖项在packages/且文件夹名和包名完全匹配。

4

1 回答 1

0

文档中的这一行提供了一个提示:

babel-core 的 package.json 中 babel-generator的版本由 packages/babel-generator 满足,传递一个内部依赖。

即,您的内部包必须匹配任何版本约束,否则它们将被视为外部包。

即使我的依赖项是 on "myproj-util": "*",我也忘记在 of 中添加一个版本(任何版本package.jsonmyproj-util。只需添加已version解决的问题。即,myproj-utilpackage.json 看起来像:

{
  "name": "myproj-util",
  "version": "0.1.0"
}
于 2017-10-30T16:46:39.180 回答