NPM:ENOENT:没有这样的文件或目录,重命名

NPM: ENOENT: no such file or directory, rename

我在项目上使用 gulp,然后我决定删除所有开发依赖项以切换到 webpack,但每次我尝试使用 npm 安装时都会出现此错误:

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.3 (node_modules\fsevents):
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Error: EPERM: operation not permitted, rename 'C:\Users\MiguelFrias\Desktop\Therabytes\node_modules\.staging\fsevents-e80c4ef4\node_modules\are-we-there-yet' -> 'C:\Users\MiguelFrias\Desktop\Therabytes\node_modules\.staging\are-we-there-yet-5db4c798'

npm ERR! path C:\Users\MiguelFrias\Desktop\Therabytes\node_modules\acorn
npm ERR! code ENOENT
npm ERR! errno -4058
npm ERR! syscall rename
npm ERR! enoent ENOENT: no such file or directory, rename 'C:\Users\MiguelFrias\Desktop\Therabytes\node_modules\acorn' -> 'C:\Users\MiguelFrias\Desktop\Therabytes\node_modules\.acorn.DELETE'
npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\MiguelFrias\AppData\Roaming\npm-cache\_logs18-04-04T11_54_23_587Z-debug.log

知道会发生什么。

第二行可能会提示正在发生的事情:

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Error: EPERM: operation not permitted, rename 'C:\Users\MiguelFrias\Desktop\Therabytes\node_modules\.staging\fsevents-e80c4ef4\node_modules\are-we-there-yet' -> 'C:\Users\MiguelFrias\Desktop\Therabytes\node_modules\.staging\are-we-there-yet-5db4c798'

npm 似乎对您尝试使用的文件夹没有足够的权限。

你可以试试:

  • 再次删除npm_modules。
  • 使用管理员权限打开 editor/terminal 以 npm install

我找到了问题的解决方案,显然是最新版本的 npm 有点问题,我使用的是 npm version 5.6.0,但我降级到了 npm version 5.3.0。毕竟这确实有效,在安装了几个包之后我仍然得到同样的错误。

ok 更改 npm 的最后一个版本 version 5.8.0 现在一切正常,之前是 atom 的某种问题拒绝了构建过程安装包依赖项的权限。

只需删除 包-lock.json 文件然后安装包,这就是您所需要的并且应该可以工作

rm package-lock.json && npm i

当我收到此错误时,我在我的任务管理器中查找了节点的所有 运行 个实例(我在 windows 上使用进程资源管理器)和 close/kill 所有 运行节点的实例。对我来说,它通常是 webstorm 或 vs code。关闭这些程序并确保没有 运行 节点进程 npm install 再次运行后。

为了不每次都删除包-lock.json或node_modules,只需添加内容为"package-lock=false"的文件“.npmrc”,或者如果文件“.npmrc”添加此字符串已经存在。

正在删除包-lock.json 或 node_modules & 在 运行 之后:

npm install -g npm

它对我有用。

我刚刚重试 运行

npm install 

成功了

对我来说,程序包-lock.json 没有创建,脚本本身就失败了。

这解决了我的问题:

- deleted my node_modules.
- npm cache clean 
- opened cmd as administrator at the repository folder
- logged-in to the https://registry.npmjs.org/ using username and passoward as few of my components needed authentication to install.
- npm i

缓存验证命令为我解决了这个问题

npm cache verify

您可以尝试使用命令 rm package-lock.json 删除 package-lock.json 然后您转到 Node.JS 网站 'install it' 通过转到 LTS,然后在你的节点更新后 运行 在你的终端中安装 npm,这对我有用。

实际上,您正在安装的当前软件包有一些依赖项,我的 npm 找不到这些依赖项。因此,在安装此软件包之前,只需执行以下命令。 (它将安装 package.json 文件中提到的所有列出的依赖项,这些依赖项是 运行 您的应用程序所必需的)

npm install 

有效...!

我正在使用
-节点 v15.5.0

-npm v6.14.10

试试这个:

  1. 关闭“世博会开始”
  2. 删除"包-lock.json"
  3. 现在尝试安装包

示例:npm i @react-navigation/native

这将解决问题。

这对我有用,

rm -rf ./**/node_modules

而我需要lerna bootstrap

只需将节点更新到最新版本即可。 它解决了我的问题。

如果您遇到此错误,修补程序是按照以下步骤操作:

删除节点模块文件夹 运行 命令 npm 缓存清理 --force 运行 命令 npm 安装 使用 npm install your-package-name

再次安装包

我在 Ubuntu wsl 中使用了 运行 命令,但它不起作用,所以我在 cmd 提示符下尝试了 运行,它起作用了

我删除了 node_modulespackage_lock.json。然后,npm install 它起作用了

请检查任何 package.json 是否在任何地方打开,然后先关闭它再重试。

对我来说,我刚刚删除了 package-lock.jsonnode_modules 文件夹。现在一切正常

另一件事我在已经存在并经过多个贡献者的项目中看到了很多:

  • 仔细检查您团队中是否有人同时完​​成了 npm installyarn

你会在同一个仓库中看到 package-lock.json(由 npm 生成)和 yarn-lock.json(由 yarn 生成)。这可能会导致 node_modules 文件夹中的冲突产生副作用。

您可以尝试将该文件夹转储到本地,为您的项目建立一个选择的包管理器,并指导整个团队进行最佳实践。

对我来说,我必须 sudo npm install 命令。不知道为什么。。。也不想知道。

sudo npm install --save-dev my_package

这些步骤对我有用:

    1. run "npm cache verify" or 
    2. remove node_modules and package-lock.json
and rerun command)

有时这可能是您尝试安装的软件包的问题。如果该包是本地包并且有一个 node_modules 文件夹。尝试:

cd /path/to/package
rm -rf package-lock.json npm-shrinkwrap
npm install

当我使用 expo 编写 React Native 应用程序时发生在我身上, 当我 运行 应用程序并尝试安装表单 npm 时发生了该错误。 所以只需停止 运行 应用程序并重新安装程序包 对我来说它工作正常

这对我有用(在 Ubuntu 的命令行上): 使用

更新节点
sudo npm install -g n 

接着是

sudo n 16.13.2

关闭并重新打开 shell,cd 回到正确的存储库,然后

sudo install npm -g

    

将 npm 更新到最新版本对我有用。