next.js PNPM安装-错误:ENOENT:没有这样的文件或目录

crcmnpdw  于 2023-10-18  发布在  其他
关注(0)|答案(1)|浏览(258)

我是按照在线教程,它不赞成使用PMPM,因为它比NPM更好。
我在Windows上运行:

iwr https://get.pnpm.io/install.ps1 -useb | iex

在我的根文件夹(D:/),但我得到的错误:

node:fs:2552
      handleErrorFromBinding(ctx);
      ^

Error: ENOENT: no such file or directory, lstat 'D:\projects\aston\nextjs\my_username'
    at Object.realpathSync (node:fs:2552:7)
    at Object.realpathSync (pkg/prelude/bootstrap.js:1361:36)
    at ../node_modules/.pnpm/[email protected]/node_modules/temp-dir/index.js (C:\snapshot\dist\pnpm.cjs)
    at __require (C:\snapshot\dist\pnpm.cjs)
    at ../node_modules/.pnpm/[email protected]/node_modules/tempy/index.js (C:\snapshot\dist\pnpm.cjs)
    at __require (C:\snapshot\dist\pnpm.cjs)
    at ../env/node.fetcher/lib/index.js (C:\snapshot\dist\pnpm.cjs)
    at __require (C:\snapshot\dist\pnpm.cjs)
    at ../env/plugin-commands-env/lib/node.js (C:\snapshot\dist\pnpm.cjs)
    at __require (C:\snapshot\dist\pnpm.cjs) {
  errno: -4058,
  syscall: 'lstat',
  code: 'ENOENT',
  path: 'D:\\my_username'
}

1.为什么我得到这个错误?/我该如何解决?
1.为什么运行此命令时我在哪个文件夹中很重要?它不应该默认为C:\Users\my_username吗?或者我从d驱动器执行此操作会混淆它?(由于我的主c驱动器上的空间限制,我还在d驱动器上安装了node.js)
1.我的Windows用户名文件夹也是c:\users\username_with_last_letter_chopped_off

  • 但这个安装要求D:\\full_username。因此,从c:\\users目录运行install命令也不能解决问题。

好吧,然后我尝试运行npm install,而不是运行成功。3.运行此程序时,我在哪个文件夹中有关系吗?
然后,我使用npx create-next-app@latest创建了我的Next.JS应用程序,并将其CD到文件夹中
然后在这个文件夹中运行pnpm install,因为这就是我在教程中看到的原因。这给了我一个错误:

node:fs:2552
      handleErrorFromBinding(ctx);
      ^

Error: ENOENT: no such file or directory, lstat 'D:\projects\aston\nextjs\my_username'
    at Object.realpathSync (node:fs:2552:7)
    at Object.realpathSync (pkg/prelude/bootstrap.js:1361:36)
    at ../node_modules/.pnpm/[email protected]/node_modules/temp-dir/index.js (C:\snapshot\dist\pnpm.cjs)
    at __require (C:\snapshot\dist\pnpm.cjs)
    at ../node_modules/.pnpm/[email protected]/node_modules/tempy/index.js (C:\snapshot\dist\pnpm.cjs)
    at __require (C:\snapshot\dist\pnpm.cjs)
    at ../env/node.fetcher/lib/index.js (C:\snapshot\dist\pnpm.cjs)
    at __require (C:\snapshot\dist\pnpm.cjs)
    at ../env/plugin-commands-env/lib/node.js (C:\snapshot\dist\pnpm.cjs)
    at __require (C:\snapshot\dist\pnpm.cjs) {
  errno: -4058,
  syscall: 'lstat',
  code: 'ENOENT',
  path: 'D:\\projects\\aston\\nextjs\\my_username'
}

1.正如你所看到的,它正在寻找:“D:\projects\阿斯顿\nextjs\my_username”
好吧,我显然不希望my_username成为我的应用程序文件夹的一部分。所以我应该从哪个文件夹运行它。
1.最后,我一直注意到一个D:\\projects\\my_username\\AppData\\Local文件夹在不同的时间被创建。为什么它会出现在我的项目文件夹中。它不应该默认使用我的实际Windows用户名文件夹吗?或者是因为我在D目录而不是C驱动器上,它变得混乱?
所以,是的,正如你所看到的,我对很多事情感到困惑!
编辑:好的,我创建了这个文件夹:

C:\Users\full_username\AppData\Local

现在iwr https://get.pnpm.io/install.ps1 -useb | iex似乎已经工作了。但是现在,如果我进入我的项目文件夹并输入pnpm只是为了看看它是否被检测到,它会给出错误:

node:fs:2552
      handleErrorFromBinding(ctx);
      ^

Error: ENOENT: no such file or directory, lstat 'D:\projects\aston\nextjs\my_username'
  ...
  errno: -4058,
  syscall: 'lstat',
  code: 'ENOENT',
  path: 'D:\\projects\\aston\\nextjs\\my_username'
}

但我不希望我的用户名出现在我的项目文件夹中!

bwleehnv

bwleehnv1#

阅读后,确定:https://pnpm.io/faq
我的结论是PNPM只是在Windows上有缺陷,特别是。当你像我一样有不同的卷时。将只是给予它,并坚持npm。

相关问题