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

Next.js Monorepo中Prisma Client路径解析错误求助

解决思路

1. 检查Yarn Workspaces依赖隔离

  • 确认investments和digital-assets子项目的package.json中,@prisma/client都是本地依赖,未被放在根package.json的共享依赖里。如果之前误设为共享,Yarn会优先使用统一版本,导致路径混乱。
  • 针对investments子项目单独重装依赖:yarn workspace investments install --focus,强制Yarn在该子项目本地node_modules安装独立的@prisma/client。

2. 修正Prisma生成配置

  • 打开investments/prisma/schema.prisma,确保generator client块指定正确输出路径:
    generator client {
      provider = "prisma-client-js"
      output   = "./node_modules/@prisma/client"
    }
    
  • 在investments目录下重新生成客户端:npx prisma generate,保证生成文件落在本地node_modules内。

3. 清理缓存与构建产物

  • 删除所有冗余文件:
    rm -rf node_modules */node_modules */.next */prisma/client
    
  • 清除Yarn缓存:yarn cache clean,之后在根目录重新执行yarn install。

4. 调整Next.js模块解析规则

  • 在investments/next.config.js中添加规则,强制优先读取本地node_modules:
    const path = require('path');
    
    module.exports = {
      webpack: (config) => {
        config.resolve.modules.unshift(path.resolve(__dirname, 'node_modules'));
        return config;
      },
    };
    
  • 检查子项目和根目录的tsconfig.json/jsconfig.json,确保没有错误的paths配置导致@prisma/client被重定向到其他子项目。

5. 排查版本冲突问题

  • 统一两个子项目的@prisma/client版本,版本不一致可能导致Yarn在子项目中安装多版本,引发路径识别错误。
  • 执行yarn workspaces info查看依赖树,确认investments的@prisma/client指向本地node_modules。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 05:25:19