gpt4 book ai didi

windows - Node.js 无法在 Windows 上安装全局 npm 包(不是路径)

转载 作者:可可西里 更新时间:2023-11-01 14:49:58 25 4
gpt4 key购买 nike

所以,我有一个奇怪的问题,我什至不确定我能确定。我刚刚在我的 Windows 7 机器上安装了当前版本的 Node.js (v.10.*)。我尝试在全局范围内安装几个包(gulp 和 yoeman),但是在安装它们时出现错误,并且在我的 C:\Users\Michael\AppData\Roaming\npm\node_modules 目录中,许多包文件都丢失了。显然,当我尝试全局运行命令时,它失败了,因为没有命令。它从未被创建。

一些其他全局安装的包工作正常(bower 和 grunt)。

让事情变得非常棘手。当我将 gulp 安装到本地文件夹(没有 -g)时,安装工作完美,我可以通过在命令前添加整个路径来使用 gulp。显然,我可以将该路径添加到我的系统属性中,这样该命令将是全局的,但这并不能真正解决我的问题。为什么全局安装会报错,本地安装不会报错?

当我在本地安装 gulp 时查看目录,我看到正在创建的文件。然后出现第一个错误,许多文件被删除。

我相信我的 gulp 安装日志的相关部分是:

6949 verbose lock lodash.noop@2.4.1 C:\Users\Michael\AppData\Roaming\npm-cache\7e62c2bb-lodash-noop-2-4-1.lock
6950 error Error: ENOENT, lstat 'C:\Users\Michael\AppData\Roaming\npm\node_modules\gulp\node_modules\vinyl-fs\node_modules\glob-stream\node_modules\glob2base\node_modules\lodash.findindex\node_modules\lodash.createcallback\node_modules\lodash._baseisequal\node_modules\lodash._releasearray\node_modules\lodash._arraypool'
6951 error If you need help, you may report this *entire* log,
6951 error including the npm and node versions, at:
6951 error <http://github.com/npm/npm/issues>
6952 error System Windows_NT 6.1.7601
6953 error command "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "-g" "gulp"
6954 error cwd c:\wamp\www\phoenix\animus\gulp
6955 error node -v v0.10.28
6956 error npm -v 1.4.9
6957 error path C:\Users\Michael\AppData\Roaming\npm\node_modules\gulp\node_modules\vinyl-fs\node_modules\glob-stream\node_modules\glob2base\node_modules\lodash.findindex\node_modules\lodash.createcallback\node_modules\lodash._baseisequal\node_modules\lodash._releasearray\node_modules\lodash._arraypool
6958 error fstream_path C:\Users\Michael\AppData\Roaming\npm\node_modules\gulp\node_modules\vinyl-fs\node_modules\glob-stream\node_modules\glob2base\node_modules\lodash.findindex\node_modules\lodash.createcallback\node_modules\lodash._baseisequal\node_modules\lodash._releasearray\node_modules\lodash._arraypool
6959 error fstream_unc_path \\?\C:\Users\Michael\AppData\Roaming\npm\node_modules\gulp\node_modules\vinyl-fs\node_modules\glob-stream\node_modules\glob2base\node_modules\lodash.findindex\node_modules\lodash.createcallback\node_modules\lodash._baseisequal\node_modules\lodash._releasearray\node_modules\lodash._arraypool
6960 error fstream_type Directory
6961 error fstream_class DirWriter
6962 error code ENOENT
6963 error errno 34
6964 error fstream_stack C:\Program Files\nodejs\node_modules\npm\node_modules\fstream\lib\writer.js:284:26
6964 error fstream_stack Object.oncomplete (fs.js:107:15)
6965 verbose exit [ 34, true ]

如果有帮助,我有日志文件。

谢谢。

最佳答案

Windows 仅支持 260 个字符作为最大路径长度。希望nodejs开发者解决嵌套模块的方法。要解决此问题,我只需将全局 npm 模块路径从 AppData 更改为 c: 以获取一些字符即可解决问题。我知道这个 hack 只为您提供了几个字符,但它对我有用。为此,

  1. 以管理员模式打开记事本。
  2. 前往位置[nodejs安装目录]\node_modules\npm
  3. 打开文件“npmrc”并更改 prefix=c:\npm
  4. 保存文件。

关于windows - Node.js 无法在 Windows 上安装全局 npm 包(不是路径),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24073000/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com