从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"
关于如何解决或获取其他日志输出以解决问题的任何想法?
答案 0 :(得分:0)
您可以尝试删除/ node_modules /排除项吗?如果将其删除,我想它将能够进入该文件夹并执行您需要的操作。由于amazon-dax-client位于该文件夹中,并且您要告诉Webpack忽略node_modules文件夹,因此它将无法访问该文件夹。让我知道是否有帮助。
答案 1 :(得分:0)
虽然我无法具体说出解决该问题的方法,但我不再遇到该错误。删除package-lock.json
和node_modules
似乎是催化剂。
答案 2 :(得分:0)
或者,您可以考虑使用node-prune从node_modules中删除不必要的文件(.md,.ts,...),它的效果不如webpack,但它的复杂程度较低,而且绝对不会出错。对于某些项目可能已经足够了。