| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- const path = require('path');
- module.exports = {
- mode: 'production', // 或 'development'
- entry: './src/server.ts', // 你的主入口点
- target: 'node', // 针对 Node.js,不会打包内置模块如 fs、path 等
- module: {
- rules: [
- {
- test: /\.tsx?$/,
- use: 'ts-loader',
- exclude: /node_modules/,
- },
- ],
- },
- resolve: {
- extensions: ['.tsx', '.ts', '.js'], // 自动解析确定的扩展
- },
- output: {
- filename: 'app.js', // 输出的打包文件
- path: path.resolve(__dirname, 'dist'),
- },
- externals: {
- // 排除有问题的二进制模块和可选依赖
- 'kerberos': 'commonjs kerberos',
- 'snappy': 'commonjs snappy',
- 'bson-ext': 'commonjs bson-ext',
- '@mongodb-js/zstd': 'commonjs @mongodb-js/zstd',
- 'mongodb-client-encryption': 'commonjs mongodb-client-encryption',
- '@napi-rs/snappy-darwin-arm64': 'commonjs @napi-rs/snappy-darwin-arm64',
- '@napi-rs/snappy-darwin-x64': 'commonjs @napi-rs/snappy-darwin-x64',
- '@napi-rs/snappy-linux-x64-gnu': 'commonjs @napi-rs/snappy-linux-x64-gnu',
- '@napi-rs/snappy-linux-x64-musl': 'commonjs @napi-rs/snappy-linux-x64-musl',
- '@napi-rs/snappy-linux-arm64-gnu': 'commonjs @napi-rs/snappy-linux-arm64-gnu',
- '@napi-rs/snappy-linux-arm64-musl': 'commonjs @napi-rs/snappy-linux-arm64-musl',
- '@napi-rs/snappy-linux-arm-gnueabihf': 'commonjs @napi-rs/snappy-linux-arm-gnueabihf',
- '@napi-rs/snappy-linux-arm-musleabihf': 'commonjs @napi-rs/snappy-linux-arm-musleabihf',
- '@napi-rs/snappy-linux-riscv64-gnu': 'commonjs @napi-rs/snappy-linux-riscv64-gnu',
- '@napi-rs/snappy-linux-riscv64-musl': 'commonjs @napi-rs/snappy-linux-riscv64-musl',
- '@napi-rs/snappy-linux-ppc64-gnu': 'commonjs @napi-rs/snappy-linux-ppc64-gnu',
- '@napi-rs/snappy-linux-s390x-gnu': 'commonjs @napi-rs/snappy-linux-s390x-gnu',
- '@napi-rs/snappy-openharmony-arm64': 'commonjs @napi-rs/snappy-openharmony-arm64',
- '@napi-rs/snappy-openharmony-x64': 'commonjs @napi-rs/snappy-openharmony-x64',
- '@napi-rs/snappy-openharmony-arm': 'commonjs @napi-rs/snappy-openharmony-arm',
- '@napi-rs/snappy-wasm32-wasi': 'commonjs @napi-rs/snappy-wasm32-wasi',
- '@napi-rs/snappy-freebsd-x64': 'commonjs @napi-rs/snappy-freebsd-x64',
- '@napi-rs/snappy-freebsd-arm64': 'commonjs @napi-rs/snappy-freebsd-arm64'
- },
- // 添加忽略警告的配置
- ignoreWarnings: [
- /Critical dependency: the request of a dependency is an expression/,
- /Module not found: Error: Can't resolve 'bson-ext'/,
- /Package path .* is not exported from package/
- ],
- };
|