Я пытаюсь построить наш сервер NodeJS с помощью веб-пакета.
Я не могу найти однозначного ответа, возможно ли или нет упаковать модули узла вместе в комплект.
Дляв тот момент, когда у меня есть сборка моего кода, но узлы-модули должны быть установлены вручную.
const webpack = require('webpack');
const path = require('path');
const Dotenv = require('dotenv-webpack');
const nodeExternals = require('webpack-node-externals');
module.exports = {
entry: './bin/www',
target: 'node',
output: {
path: path.join(__dirname, 'build'),
filename: 'bundle.js',
},
externals: [nodeExternals()],
devtool: 'sourcemap',
plugins: [
new Dotenv(),
new webpack.BannerPlugin({
banner: 'require("source-map-support").install();',
raw: true,
entryOnly: false,
})
],
};
Эта сборка прекрасно работает, если я устанавливаю узлы-модули вручную.(npm i)
Я хотел предоставить нашему хосту архив типа plug-and-play , но закомментировав nodeExternals, который я получил:
ПРЕДУПРЕЖДЕНИЕ в./node_modules/mongoose/lib/drivers/index.js 10: 13-49 Критическая зависимость: запрос зависимости является выражением @ ./node_modules/mongoose/lib/schema.js @ ./node_modules/mongoose/lib/index.js @ ./node_modules/mongoose/index.js @ ./app.js @ ./bin/www
ПРЕДУПРЕЖДЕНИЕ в ./node_modules/require_optional/index.js 82: 18-42 Критическая зависимость:запрос зависимости является выражением @ ./node_modules/mongodb-core/index.js @ ./node_modules/mongodb/index.js @ ./node_modules/mongoose/lib/index.js @ ./node_modules/mongoose/index..js @ ./app.js @ ./bin/www
ПРЕДУПРЕЖДЕНИЕ в ./node_modules/express/lib/view.js 78: 29-56 Критическая зависимость: запрос зависимости является выражением @./node_modules/express/lib/application.js @ ./node_modules/express/lib/express.js @ ./node_modules/express/index.js @ ./app.js @ ./bin/www
ПРЕДУПРЕЖДЕНИЕ в ./node_modules/es6-promise/dist/es6-promise.js Модуль не найден: Ошибка: не удается разрешить 'vertx' в 'D: \ repos \ alms-web-portals \node_modules \ es6-обещание \ dist '@ ./node_modules/es6-promise/dist/es6-promise.js @ ./node_modules/mongodb/lib/cursor.js @ ./node_modules/mongodb/index.js @ ./node_modules/mongoose/lib/index.js @ ./node_modules/mongoose/index.js @ ./app.js @ ./bin/www
В комплект входят node_modules, и сервер работает, но любойвызов API завершается с ошибочным запросом.