使用yarn

时间:2019-03-06 12:23:42

标签: node.js offline yarnpkg

我尝试以离线模式在项目中添加一个软件包(未发布)。


我在项目的yarnrc中配置了yarn-offline-mirror:

yarn-offline-mirror "./yarn-offline-mirror"

我手动修改package.json:

 "dependencies": {
        "@xxx/yyy": "1.0.0",
 }

我打包好了包裹: 纱包-文件名@ xxx / yyy @ 1.0.0

我在项目的“ yarn-offline-mirror”文件夹中手动移动了软件包@ xxx / yyy @ 1.0.0。


我在我的项目中运行:

yarn install --offline

我获得了:

  

错误找不到“ @ xxx / yyy”的任何版本   匹配我们缓存中的“ 1.0.0”(可能的版本是   “”)。这通常是由于缺少   lockfile,运行不带--offline标志的Yarn可能有助于解决此问题   问题。


如果我在项目中(在线模式)发布并安装了@ xxx / yyy @ 1.0.0软件包,之后,我使用yarn-offline-mirror在离线模式下重新安装,就可以了。

但是我想打包并在我的项目中添加我的包@ xxx / yyy @ 1.0.0而不发布我的包(如果我没有Internet连接)。

1 个答案:

答案 0 :(得分:0)

我很确定您已经遵循了blog,其中包含所有步骤。 我也遵循了它,有一个重要的点并不明显。 yarn-offline-mirro基于yarn.lock文件(运行yarn install后会自动生成)。这是该过程中的关键相关点,并且在博客文章中并未很好地强调。

使用yarn install在“在线”模式下像其他任何软件包一样安装软件包,您会看到.tgz软件包在您的[off-line-folder]中,那么您可以删除[node_modules]您最终可以在项目文件夹中执行yarn cache clean甚至使您脱机,但切勿删除yarn.lock。 之后,yarn install --offline应该会按预期工作。