Lerna尝试链接依赖项时失败,显示404

mpe*_*pen 5 lerna

我的结构如下:

  • package.json
  • lerna.json
  • 包装
    • myproj-util
      • package.json
    • 方案
      • package.json-具有dev-depenency 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@*
Run Code Online (Sandbox Code Playgroud)

从文档中得出的理解是,在运行lerna bootstrap它时,应“检查每个依赖项是否是Lerna存储库的一部分”,因此应将其进行符号链接。

所以...为什么不仅仅将我的内部依赖符号链接在一起?依赖关系在下面packages/,并且文件夹名称和程序包名称完全匹配。

mpe*_*pen 0

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

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

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

尽管我依赖于,但我忘记了向中"myproj-util": "*"添加一个版本(任何版本)。只需添加即可解决问题。即,package.json 看起来像:package.jsonmyproj-utilversionmyproj-util

{
  "name": "myproj-util",
  "version": "0.1.0"
}
Run Code Online (Sandbox Code Playgroud)

  • 我已经检查了所有的 package.json 文件,它们与依赖版本结合在一起。我也不使用插入符号。但是,我仍然收到 404 找不到消息:( (3认同)