Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 为什么纱线总是从互联网下载软件包?_Node.js_Npm_Yarnpkg - Fatal编程技术网

Node.js 为什么纱线总是从互联网下载软件包?

Node.js 为什么纱线总是从互联网下载软件包?,node.js,npm,yarnpkg,Node.js,Npm,Yarnpkg,我使用并且注意到,纱线安装总是从互联网下载软件包。为什么Thread没有优先选择缓存中可用的已下载包 纱线的编号表示: commander.option('--prefer-offline', 'use network only if dependencies are not available in local cache'); 我执行warn cache dir,它甚至返回一个目录,因此有一个缓存可用于我的包。那么,如果缓存是最新的,为什么spirn需要单独连接到internet,而不是一

我使用并且注意到,
纱线安装
总是从互联网下载软件包。为什么Thread没有优先选择缓存中可用的已下载包

纱线的编号表示:

commander.option('--prefer-offline', 'use network only if dependencies are not available in local cache');
我执行
warn cache dir
,它甚至返回一个目录,因此有一个缓存可用于我的包。那么,如果缓存是最新的,为什么
spirn
需要单独连接到internet,而不是一次又一次地下载相同的内容呢


您是否锁定了依赖项,或者是否使用了范围版本控制,如
^1.0.0
?因为如果是后者:Thread(和npm)总是会向互联网索要最新的semver兼容版本,Dependencies会更新补丁和次要版本,尤其是更大更流行的软件包。非常感谢!facepalm,我只使用了“^”。。有没有办法锁定我的版本,但通过使用
warn upgrade
打开“较新”的版本,而不手动升级每个依赖版本?此外,连接到internet很好,但它似乎也一直在下载软件包,即使没有更新的软件包可用,您也可能必须在“纱线问题跟踪程序”上询问此问题-如果您看到它重新下载缓存中已有的软件包,这听起来像是一个bug。pnpm是另一个先缓存的软件包管理器。