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

NestJS回滚代码后仍报Cannot find module jwt-auth.guard错误

NestJS项目运行报错:无法找到src/auth/guards/jwt-auth.guard模块

报错堆栈信息

Error: Cannot find module 'src/auth/guards/jwt-auth.guard'
Require stack:
~/Documents/Code/nestjs-passport-learning/dist/src/user/user.service.js
~/Documents/Code/nestjs-passport-learning/dist/src/user/user.module.js
~/Documents/Code/nestjs-passport-learning/dist/src/app.module.js
~/Documents/Code/nestjs-passport-learning/dist/src/main.js
at Function.Module._resolveFilename (node:internal/modules/cjs/loader:939:15)

问题异常点

该报错逻辑上存在矛盾:当前源码中user模块、user.service文件内完全没有引用该鉴权相关文件,仅在前期调试时曾引入过相关代码,后续排查问题时已经将相关引用全部移除,疑似构建流程或Node内部缓存了旧版本代码,运行时仍在查找已不存在的引用。

完整复现流程

  • 初始状态下项目代码可正常编译运行
  • 尝试在user.service的某个方法上添加@UseGuards(JwtAuthGuard)装饰器
  • 同期新增launch.json文件配置调试功能
  • 首次运行代码:构建成功,但运行时抛出大量模块找不到的错误
  • 停止服务后排查,确认报错原因是未在auth.module导出对应类、UserModule未引入AuthModule,修复上述问题后重启服务
  • 重启后出现前文提到的找不到jwt-auth.guard模块的错误
  • 为排查问题,移除@UseGuards(JwtAuthGuard)装饰器、所有相关import语句、UserModule中的AuthModule引入,同时删除launch.json文件,完全回滚到10分钟前可正常运行的代码版本
  • 回滚后仍然抛出相同错误,此时user模块中已经不存在任何对jwt-auth.guard文件的引用

已尝试的无效排查方案

  • 删除jwt-auth-guard.ts文件本身
  • 切回尚未编写jwt-auth-guard.ts文件的更早代码版本
  • 重启开发机
    以上操作全部无效,无论如何调整代码,都会抛出相同的找不到模块错误,当前运行的代码和之前正常运行的版本无任何差异。

诉求

需要该问题的排查思路,目前无法定位问题根因,也未检索到同类问题的解决方案。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 18:54:28