我曾经能够使用firebase运行和部署我的代码。然后我升级到新款m1 MacBook pro。我git克隆了我的代码,并做了一些小的更改。我试过使用
firebase deploy
但是我收到错误信息
zsh: command not found: firebase
然后我试了
npm install -g firebase-tools
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated debug@4.1.0: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)
npm ERR! code EACCES
npm ERR! syscall symlink
npm ERR! path ../lib/node_modules/firebase-tools/lib/bin/firebase.js
npm ERR! dest /usr/local/bin/firebase
npm ERR! errno -13
npm ERR! Error: EACCES: permission denied, symlink '../lib/node_modules/firebase-tools/lib/bin/firebase.js' -> '/usr/local/bin/firebase'
npm ERR! [OperationalError: EACCES: permission denied, symlink '../lib/node_modules/firebase-tools/lib/bin/firebase.js' -> '/usr/local/bin/firebase'] {
npm ERR! cause: [Error: EACCES: permission denied, symlink '../lib/node_modules/firebase-tools/lib/bin/firebase.js' -> '/usr/local/bin/firebase'] {
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'symlink',
npm ERR! path: '../lib/node_modules/firebase-tools/lib/bin/firebase.js',
npm ERR! dest: '/usr/local/bin/firebase'
npm ERR! },
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'symlink',
npm ERR! path: '../lib/node_modules/firebase-tools/lib/bin/firebase.js',
npm ERR! dest: '/usr/local/bin/firebase'
npm ERR! }
npm ERR!
npm ERR! The operation was rejected by your operating system.
npm ERR! It is likely you do not have the permissions to access this file as the current user
npm ERR!
npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator.
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/brennanadams/.npm/_logs/2020-12-03T18_52_42_463Z-debug.log
我在网上查了一下,但我还没有找到解决方案,任何帮助都很感激。我不确定这是因为我有m1芯片,它不兼容,还是因为我升级时重置了一堆设置。谢谢你的帮助。
要在Mac上全局安装npm软件包,请尝试使用sudo
命令运行。您需要输入密码。
sudo npm install -g firebase-tools
编辑:这个问题的原标题是关于request
的贬低,这就是为什么我花了一段时间解释这不是真正的问题,然后才了解真正的问题是什么以及需要做什么。
关于request
:你不需要为此做任何事情。CCD_ 5将作为CCD_ 6的依赖项继续正常工作。希望他们能在某个时候用其他东西取代它,但没有问题需要解决。request
模块的弃用是一种积极主动的措施,旨在推动人们使用更积极维护和现代化的解决方案。这并不是因为request
有一些根本性的问题,需要人们现在就转移到其他地方或类似的地方。
相反,您的问题是EACCESS
问题。为此,您需要查看有关该问题的npm
文档。结果是,您可能希望使用nvm
这样的版本管理器重新安装Node.js。如果你不能或不想这样做,你可以配置npm
在你有写权限的目录中安装全局包。
它适用于Yarn,Try:
yarn global add firebase-tools
export PATH="$(yarn global bin):$PATH"
command -v firebase
并且firebase登录将正常工作
首先转到主目录。
mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
在您喜欢的文本编辑器中,打开或创建一个~/.profile文件,并添加以下行:
export PATH=~/.npm-global/bin:$PATH
在命令行上,更新系统变量:
source ~/.profile
要测试您的新配置,请在不使用sudo:的情况下全局安装软件包
npm install -g firebase-tools