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

Next.js 15部署AWS Lambda报Cannot find module './bundle5'求助

Next.js 15.0.2部署AWS Lambda时缺失bundle5模块问题

环境信息

  • Next.js: 15.0.2
  • Node.js: 18
  • 部署方式:将Next.js应用部署至AWS Lambda,已在next.config.ts中设置output: 'standalone',并编写handler函数适配Lambda环境

错误信息

部署后持续出现以下错误:

Error: Cannot find module './bundle5'
Require stack:
- /var/task/standalone/node_modules/next/dist/compiled/webpack/webpack.js
- /var/task/standalone/node_modules/next/dist/server/config-utils.js
- /var/task/standalone/node_modules/next/dist/server/config.js
- /var/task/standalone/node_modules/next/dist/server/next.js

相关代码

handler.js

const { createServer } = require('http');
const { parse } = require('url');
const path = require('path');
const next = require('next');

const app = next({
  dev: false,
  dir: path.resolve(__dirname),
});

const handle = app.getRequestHandler();

exports.handler = async (event, context) => {
  await app.prepare();

  const server = createServer((req, res) => {
    const parsedUrl = parse(req.url, true);
    handle(req, res, parsedUrl);
  });

  const port = process.env.PORT || 3000;

  server.listen(port, () => {
    console.log(`> Ready on http://localhost:${port}`);
  });
};

next.config.ts

import type { NextConfig } from "next";

const nextConfig: NextConfig = {
  output: "standalone",
  async rewrites() {
    return [
      {
        source: '/css/:path*', 
        destination: 'https://www.test.com/css/:path*', 
      },
      {
        source: '/amz/cart/:path*', 
        destination: 'https://www.test.com/amz/cart/:path*',
      },
    ];
  },
  typescript: {
    ignoreBuildErrors: false,
  },
  eslint: {
    ignoreDuringBuilds: false,
  },
  poweredByHeader: false,
  compress: true,
};

export default nextConfig;

问题排查细节

调试发现,.next构建文件夹内的standalone目录下,node_modules/next/dist/compiled/webpack/webpack.js文件中存在对bundle5的引用,但该模块文件缺失。相关代码片段如下:

exports.__esModule = true

exports.default = undefined

exports.init = function () {
  if (process.env.NEXT_PRIVATE_LOCAL_WEBPACK) {
    Object.assign(exports, {
      // eslint-disable-next-line import/no-extraneous-dependencies
      BasicEvaluatedExpression: require('webpack/lib/javascript/BasicEvaluatedExpression'),
      // eslint-disable-next-line import/no-extraneous-dependencies
      ConcatenatedModule: require('webpack/lib/optimize/ConcatenatedModule'),
      // eslint-disable-next-line import/no-extraneous-dependencies
      makePathsAbsolute: require('webpack/lib/util/identifier')
        .makePathsAbsolute,
      // eslint-disable-next-line import/no-extraneous-dependencies
      ModuleFilenameHelpers: require('webpack/lib/ModuleFilenameHelpers'),
      // eslint-disable-next-line import/no-extraneous-dependencies
      NodeTargetPlugin: require('webpack/lib/node/NodeTargetPlugin'),
      // eslint-disable-next-line import/no-extraneous-dependencies
      RuntimeGlobals: require('webpack/lib/RuntimeGlobals'),
      // eslint-disable-next-line import/no-extraneous-dependencies
      SourceMapDevToolModuleOptionsPlugin: require('webpack/lib/SourceMapDevToolModuleOptionsPlugin'),
      // eslint-disable-next-line import/no-extraneous-dependencies
      StringXor: require('webpack/lib/util/StringXor'),
      // eslint-disable-next-line import/no-extraneous-dependencies
      NormalModule: require('webpack/lib/NormalModule'),
      // eslint-disable-next-line import/no-extraneous-dependencies
      sources: require('webpack').sources,
      // eslint-disable-next-line import/no-extraneous-dependencies
      webpack: require('webpack'),
    })
  } else {
    Object.assign(exports, require('./bundle5')())
  }
}

寻求解决该模块缺失问题的方案。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 21:43:16