You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kali环境下启动OWASP Juice Shop时npm start报错求助

解决Kali中OWASP Juice Shop启动失败的问题

问题根源

当前系统Node.js版本(对应NODE_MODULE_VERSION 93,即Node.js 16.x)与Juice Shop 9.3.1依赖的libxmljs2模块编译版本(对应NODE_MODULE_VERSION 64,即Node.js 14.x)不兼容,且该版本Juice Shop不支持当前Node.js版本,导致npm install提示Unsupported engine、npm start启动失败。

解决方案

方法1:用nvm管理Node.js版本(推荐)

nvm可快速切换Node版本,规避系统版本冲突:

  1. 安装nvm:
    sudo apt update
    sudo apt install nvm
    source /usr/share/nvm/init-nvm.sh
    
  2. 安装兼容的Node.js 14.x版本并切换:
    nvm install 14
    nvm use 14
    
  3. 清理旧依赖并重新部署:
    cd /home/kali/Downloads/juice-shop_9.3.1
    rm -rf node_modules package-lock.json
    npm install
    npm start
    

方法2:手动降级系统Node.js版本

直接替换系统默认Node版本为兼容版本:

  1. 卸载当前Node.js:
    sudo apt remove --purge nodejs npm
    sudo apt autoremove
    
  2. 下载并安装Node.js 14.x:
    wget https://nodejs.org/dist/v14.21.3/node-v14.21.3-linux-x64.tar.xz
    sudo tar -xJf node-v14.21.3-linux-x64.tar.xz -C /usr/local --strip-components=1
    rm node-v14.21.3-linux-x64.tar.xz
    
  3. 验证版本后重新安装依赖:
    node -v # 确认输出v14.21.3
    cd /home/kali/Downloads/juice-shop_9.3.1
    rm -rf node_modules package-lock.json
    npm install
    npm start
    

方法3:强制安装依赖(应急方案)

若不想切换版本,可尝试忽略版本检查并重新编译模块:

cd /home/kali/Downloads/juice-shop_9.3.1
rm -rf node_modules package-lock.json
npm install --force
npm rebuild libxmljs2
npm start

内容的提问来源于stack exchange,提问作者Cyberfreak

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 07:48:43