node.js - 在 macOS 终端中找不到 Google Lighthouse 命令
问题描述
我正在运行 macOS Mojave,我尝试使用 NPM 包管理器安装适用于 Node.JS 的 Google Lighthouse 包,并使用以下npm install
命令和-g
全局安装包的选项:
npm install lighthouse -g
但无论我做什么,我都会收到-bash: lighthouse: command not found
指示命令无法被 macOS 识别的错误,或者它可能没有正确导出。我什至尝试过source ~/.bash_profile
,但它没有帮助。
我什至尝试使用卸载 Lighthousenpm remove lighthouse -g
并运行以下命令来删除 NPM 的缓存:
sudo npm cache clean -f
sudo npm install -g n
然后我重新安装npm install lighthouse -g
它仍然说找不到该命令。我什至尝试关闭所有终端窗口,但仍然找不到该命令。
当我执行node --version
命令时,它返回:v12.16.1
,并npm -v
返回6.13.4
. 该lighthouse
命令是否与 Node.js 的 v12 不兼容?
我无计可施。有谁知道发生了什么?我需要导出包的路径还是什么?我错过了什么吗?
解决方案
我最终只是在 Docker 容器中运行 v12 的 Node.js 并在其中安装了 Lighthouse 并让它工作。
我"lighthouse": "^5.6.0"
在我package.json
的文件的依赖项中使用了,然后npm install
在启动容器之前做了。
容器运行后,我做了一个docker ps
来获取容器 ID,然后我docker exec -it CONTAINER_ID /bin/bash
执行了进入容器的命令,lighthouse
命令最终在那里工作。
推荐阅读
- sql-server - 如果存在,则将 csv 文件插入 mssql,然后使用 apache nifi 更新
- python - 仅自定义一个列管理模板
- python - 关于良好的编码实践,“函数和方法结束时无用的返回”是什么意思?
- reactjs - aws cognito - 如何在前端的正确时间保持 id 令牌刷新
- flutter - Flutter - SharedPreference 不保存值 - 一直返回 NULL
- python - 使用 Adam 找到使用 Pytorch 的 Rosenbrock 函数的最小值
- templates - 使用 Iron:router 将某些功能或事件的输出返回到 Meteor 中的某个新页面或模板
- mysql - 从 mysql 上的传输流接收到意外的 EOF 或 0 字节
- c# - 如何根据开头的内容按数字顺序放置文本文件?
- python - 将数据帧插入 cockroachdb 表