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

Heroku部署Node.js应用启动报错Cannot find module 'pvutils' 本地运行正常

问题原因
  • 核心是你使用的verificac19-sdk@0.4.2版本存在依赖声明漏洞:该版本没有把pvutils纳入自身的生产依赖列表,Heroku默认只会安装顶层package.json声明的生产依赖以及各依赖显式声明的生产依赖,因此部署时不会自动拉取pvutils包,启动时就会报找不到模块的错误。
  • 本地运行正常是因为你的本地开发环境中已经存在pvutils包:可能是被其他项目的依赖提升安装到了全局或公共node_modules目录,也可能是你之前本地执行完整npm install时连带安装了该包的开发版本,因此本地加载不会报错。
解决方案
  • 方案一(最推荐,见效最快):直接将pvutils显式添加到你项目的生产依赖中。在本地项目根目录执行命令npm install pvutils,执行完成后将更新后的package.json和package-lock.json提交到代码仓库,重新部署到Heroku即可正常启动。
  • 方案二:升级verificac19-sdk到更高的正式版本。该依赖的后续版本已经官方修复了依赖漏声明的问题,你可以将package.json中verificac19-sdk的版本号替换为最新稳定版,重新安装依赖后提交部署即可。
  • 方案三(不建议长期使用):修改Heroku的构建配置,允许安装全部开发依赖。该操作会把devDependencies下的所有包都安装到生产环境,会增大构建体积、引入不必要的安全风险,仅适合临时测试使用。

内容的提问来源于stack exchange,提问作者A. Rizzi

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 06:45:04