serverless-webpack не может разрешить модуль

Получение этой ошибки из serverless-webpack:

ERROR in ../db/actions/index.js
Module not found: Error: Can't resolve 'amazon-dax-client' in '/var/task/db/actions'
 @ ../db/actions/index.js 2:24-52
 @ ../db/db.js
 @ ./crop.js

Мой файл webpack.config.js содержит:

const slsw = require('serverless-webpack')

module.exports = {
    entry: slsw.lib.entries,
    target: 'node',
    externals: {
        sharp: 'commonjs sharp',
    },
    // Run babel on all .js files and skip those in node_modules
    module: {
        rules: [{
            test: /\.js$/,
            loader: 'babel-loader',
            include: __dirname,
            exclude: /node_modules/,
        }]
    }
}

amazon-dax-client модуль присутствует в node_modules.

Я вернулся к последним версиям webpack и serverless-webpack, которые работали для меня:

"serverless-webpack": "4.3.0",
"webpack": "3.11.0"

Любые идеи о том, как решить или получить дополнительный вывод журнала для отслеживания проблемы?

3 ответа

В качестве альтернативы, вы можете рассмотреть возможность использования node-prune для удаления ненужных файлов из node_modules (.md, .ts, ...). Это будет не так эффективно, как в веб-пакете, но это гораздо менее сложно и определенно не подвержено ошибкам. Это может быть достаточно для определенных проектов.

Можете ли вы попробовать удалить /node_modules/ exclusion? Если это будет удалено, я думаю, что он сможет попасть в эту папку и сделать то, что вам нужно. Поскольку amazon-dax-client находится в этой папке, и вы говорите webpack игнорировать папку node_modules, он не сможет добраться до нее. Дайте мне знать, если это поможет.

Я больше не получаю сообщение об ошибке, хотя я не могу сказать конкретно, что это исправило. Удаление package-lock.json а также node_modules казалось катализатором.

Другие вопросы по тегам