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

SvelteKit构建报错:无法检测支持的生产环境,开发/预览模式正常

问题解决步骤

一、解决'MONGO_KEY'未导出的错误

  • 确认项目根目录存在.env(本地开发用)和.env.production(生产构建用)文件,文件内正确定义:MONGO_KEY=你的MongoDB连接字符串
  • 在src/hooks.server.js中确保导入方式正确,必须使用解构语法:
    import { MONGO_KEY } from '$env/static/private';
    
  • Vercel部署时,务必在Vercel控制台的「环境变量」面板添加MONGO_KEY变量,本地.env文件不会被上传到服务器
  • 检查变量名拼写,确保大小写完全一致

二、解决「无法检测支持的生产环境」构建错误

你的项目依赖的@sveltejs/kit是测试版(next),且adapter-auto版本过旧,和新版mongoose存在兼容性问题,按以下步骤修复:

  1. 升级核心依赖到稳定版:
    npm install @sveltejs/kit@latest @sveltejs/adapter-auto@latest
    
  2. 若升级后仍检测失败,直接使用Vercel专属适配器替代adapter-auto:
    • 安装适配器:
      npm install @sveltejs/adapter-vercel@latest
      
    • 修改svelte.config.js:
      import adapter from '@sveltejs/adapter-vercel';
      
      /** @type {import('@sveltejs/kit').Config} */
      const config = {
          kit: {
              adapter: adapter(),
              alias: {
                  $routes: './src/routes',
                  '$routes/*': './src/routes/*'
              }
          }
      };
      
      export default config;
      
  3. 添加Node版本要求到package.json(mongoose 8.x需要Node 18+):
    在package.json中新增:
    "engines": {
        "node": ">=18.0.0"
    }
    
  4. 清理依赖重新安装:
    rm -rf node_modules package-lock.json
    npm install
    
  5. 重新执行构建命令:npm run build

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 16:04:51