Node.js 网页包生产生成失败:“;Can';t解决';aws sdk'&引用;
我正在用TypeScript编写一个Express应用程序,并尝试使用webpack将生产代码和供应商模块传输到一个bundle.js文件中。但我不能这样做,因为一个奇怪的节点预gyp错误: Module not found: Error: Can't resolve 'aws-sdk' in '[...]/harema-api/node_modules/bcrypt/node_modules/node-pre-gyp/lib'Node.js 网页包生产生成失败:“;Can';t解决';aws sdk'&引用;,node.js,typescript,webpack,Node.js,Typescript,Webpack,我正在用TypeScript编写一个Express应用程序,并尝试使用webpack将生产代码和供应商模块传输到一个bundle.js文件中。但我不能这样做,因为一个奇怪的节点预gyp错误: Module not found: Error: Can't resolve 'aws-sdk' in '[...]/harema-api/node_modules/bcrypt/node_modules/node-pre-gyp/lib' 有什么想法吗?提前谢谢。如果您仍然存在此问题,我通过使用webpa
有什么想法吗?提前谢谢。如果您仍然存在此问题,我通过使用
webpack
命令显式指定--config
来解决此问题,而不仅仅是将config用作第一个参数或省略它
之前:webpack./webpack.config.js--生产模式
//错误:无法解决
之后:webpack--config./webpack.config.js--mode production
我承认,我不确定为什么这解决了这个问题,因为在我的例子中,它以任何方式读取配置文件。我使用的是webpack v4.16.2和webpack cli v3.1.0。如果您仍然存在此问题,我通过使用
webpack
命令显式指定--config
来解决此问题,而不仅仅是将config用作第一个参数或忽略它
之前:webpack./webpack.config.js--生产模式
//错误:无法解决
之后:webpack--config./webpack.config.js--mode production
我承认,我不确定为什么这解决了这个问题,因为在我的例子中,它以任何方式读取配置文件。我正在使用webpack v4.16.2和webpack cli v3.1.0。我添加了该包,错误已消除,但它向我的包中添加了4.5MB(!)
删除整个“node_modules”文件夹和“npm install”解决了问题。我添加了该包,错误已消除,但它向我的包中添加了4.5MB(!)
删除整个“node_modules”文件夹和“npm install”解决了问题。在我的例子中,通过切换到
bcryptjs
包而不是bcrypt
解决了问题。稍微慢一点,但它可以工作。在我的例子中,问题是通过切换到bcryptjs
包而不是bcrypt
解决的。稍微慢一点,但它可以工作。我切换到它,错误消失了。本以为这是一场胜利,但查看了构建文件,这是传输的webpack.config.js。所以这不是一个解决方案。我切换到它,错误消失了。本以为这是一场胜利,但查看了构建文件,这是传输的webpack.config.js。因此,这不是一个解决方案。
const path = require('path');
module.exports = {
entry: './src/index.ts',
target: 'node',
mode: 'production',
devtool: 'inline-source-map',
module: {
rules: [
{
test: /\.tsx?$/,
use: 'ts-loader'
}
]
},
resolve: {
extensions: [ '.tsx', '.ts', '.js' ]
},
output: {
filename: 'bundle.js',
path: path.resolve(__dirname, 'dist')
}
};