这说明
ohpm依赖 Node.js,但你的系统中没有安装 Node.js,或者 Node.js 没有正确加入 PATH。
🔍 问题根源
ohpm(OpenHarmony Package Manager)是基于 Node.js 开发的命令行工具。
虽然 DevEco Studio 内置了 Node.js ,但它不会自动将其暴露给系统终端 。
因此,当你在终端直接运行 ohpm 时,系统找不到 node 命令。
✅ 解决方案(推荐两种)
✅ 方案一:使用 Homebrew 安装 Node.js(推荐)
这是最简单、最通用的方法,适用于所有需要 Node.js 的场景(包括 ohpm、前端开发等)。
步骤 1:用 Homebrew 安装 Node.js
javascript
# 确保 Homebrew 已配置(你已有 eval $(brew shellenv))
brew install node
💡 这会同时安装
node和npm,并自动加入 PATH。
步骤 2:验证安装
bash
node -v # 应输出版本,如 v20.18.0
npm -v # 如 10.8.2
步骤 3:再次运行 ohpm
bash
ohpm -v # 现在应该正常工作!
✅ 优点:一劳永逸,后续任何 Node.js 工具都能用。
⚠️ 方案二:使用 DevEco Studio 内置的 Node.js(不推荐,但可行)
DevEco Studio 自带 Node.js,路径通常为:
bash
/Applications/DevEco-Studio.app/Contents/tools/nodejs/bin/node
你可以临时将其加入 PATH:
步骤 1:编辑 ~/.zshrc
bash
nano ~/.zshrc
步骤 2:在文件中添加:
bash
# 使用 DevEco 内置 Node.js(仅当不想全局安装 Node 时使用)
export PATH="/Applications/DevEco-Studio.app/Contents/tools/nodejs/bin:$PATH"
🔔 注意:把这个
export放在ohpm路径之前!
完整顺序建议:
bash
# 先加 DevEco 内置 Node.js
export PATH="/Applications/DevEco-Studio.app/Contents/tools/nodejs/bin:$PATH"
# 再加 ohpm
export PATH="$PATH:/Applications/DevEco-Studio.app/Contents/tools/ohpm/bin"
步骤 3:重载配置
bash
source ~/.zshrc
步骤 4:验证
bash
which node # 应指向 DevEco 内置路径
ohpm -v # 应成功
❌ 缺点:
- 版本固定,无法升级
- 如果 DevEco 升级,路径可能变化
- 其他项目可能需要不同 Node 版本
📌 强烈建议:选择 方案一(Homebrew 安装 Node.js)
原因:
- 华为官方文档也推荐开发者自行安装 Node.js (参考)
- DevEco Studio 的内置 Node 仅供 IDE 内部使用,不保证对外兼容性
- 用 Homebrew 管理更灵活,可随时切换版本(配合
nvm)
🔧 额外建议:检查 Node.js 版本兼容性
ohpm 通常要求 Node.js 16+ 或 18+ 。
通过 Homebrew 安装的通常是 LTS 版本(如 20.x),完全兼容。
如果未来遇到版本问题,可用 nvm 管理多版本:
perl
brew install nvm
nvm install 18
nvm use 18
✅ 最终验证
bash
# 1. 检查 node
node -v
# 2. 检查 ohpm
ohpm -v
# 3. 尝试安装一个包(测试)
ohpm install @ohos/lottie --save
如果一切顺利,你的鸿蒙开发环境就完全 ready 了!