当试图链接依赖时,Lerna失败了404

时间:2017-10-30 16:43:38

标签: lerna

我的结构如下:

  • 的package.json
  • lerna.json
    • 的Myproj-util的
      • 的package.json
    • 的Myproj型模式
      • package.json - 在myproj-util
      • 上有dev-depenency

这两个项目都没有发布到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@*

我的理解from the docs是,在运行lerna bootstrap时,它应该"检查每个依赖项是否属于Lerna repo"所以它应该只是符号链接。

那么......为什么不仅仅是对内部依赖进行符号化?依赖项位于packages/下,文件夹名称和包名称完全匹配。

1 个答案:

答案 0 :(得分:0)

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

  

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

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

即使我的依赖关系在"myproj-util": "*",我也忘记将版本(任何版本)添加到package.json的{​​{1}}。只需添加myproj-util即可解决问题。即,version package.json看起来像:

myproj-util