diff --git a/.devops/scripts/npm.py b/.devops/scripts/npm.py index 473305d..6312866 100644 --- a/.devops/scripts/npm.py +++ b/.devops/scripts/npm.py @@ -40,8 +40,16 @@ def run_npm(work_dir, npm_commands, source_dir, target_dir): Logger.error(error_msg) return False, error_msg + # 加载 nvm 环境(如果存在) + nvm_env_loader = "" + nvm_dir = Path.home() / ".nvm" + if nvm_dir.exists(): + nvm_env_loader = "export NVM_DIR=\"$HOME/.nvm\" && [ -s \"$NVM_DIR/nvm.sh\" ] && . \"$NVM_DIR/nvm.sh\" && " + Logger.info("检测到 nvm 环境,将使用 nvm 中的 Node.js 版本") + # 执行 NPM 命令 - if not Logger.run_command(npm_commands, work_dir): + full_command = nvm_env_loader + npm_commands + if not Logger.run_command(full_command, work_dir): error_msg = "NPM/PNPM 编译失败,请查看日志获取详细错误信息" Logger.error(error_msg) return False, error_msg