忽略缺少的依赖项
Ignore missing dependencies
本文关键字:依赖 更新时间:2023-09-26
我在编译捆绑包时遇到了一些问题。基本上,我有webpack 1.13和npm3,当我试图捆绑我的文件时,我会发现一些依赖项找不到。更具体地说,我进口了log4js
包,得到了
ERROR in ./~/log4js/lib/appenders/hipchat.js
Module not found: Error: Cannot resolve module 'hipchat-client' in c:'vhosts'not
ifications-daemons'node_modules'log4js'lib'appenders
@ ./~/log4js/lib/appenders/hipchat.js 2:20-45
ERROR in ./~/log4js/lib/appenders/loggly.js
Module not found: Error: Cannot resolve module 'loggly' in c:'vhosts'notificatio
ns-daemons'node_modules'log4js'lib'appenders
@ ./~/log4js/lib/appenders/loggly.js 3:11-28
ERROR in ./~/log4js/lib/appenders/mailgun.js
Module not found: Error: Cannot resolve module 'mailgun-js' in c:'vhosts'notific
ations-daemons'node_modules'log4js'lib'appenders
@ ./~/log4js/lib/appenders/mailgun.js 5:14-35
ERROR in ./~/log4js/lib/appenders/slack.js
Module not found: Error: Cannot resolve module 'slack-node' in c:'vhosts'notific
ations-daemons'node_modules'log4js'lib'appenders
@ ./~/log4js/lib/appenders/slack.js 2:12-33
ERROR in ./~/log4js/lib/appenders/smtp.js
Module not found: Error: Cannot resolve module 'nodemailer' in c:'vhosts'notific
ations-daemons'node_modules'log4js'lib'appenders
@ ./~/log4js/lib/appenders/smtp.js 4:13-34
问题是我的捆绑包中不需要所有这些可选模块。sequelize
也是如此,webpack尖叫着说我没有它支持的所有驱动程序,即使我只需要mysql驱动程序。是否有任何配置选项或插件可以忽略所有缺失的依赖项,并让捆绑包在没有它们的情况下编译?
有了webpack 5及以上版本,IgnorePlugin
的用法发生了变化。更新示例:
const webpack = require('webpack');
module.exports = {
plugins: [
new webpack.IgnorePlugin({ resourceRegExp: /^/u, contextRegExp: /log4js/u })
],
};
或者:
const webpack = require('webpack');
module.exports = {
plugins: [
new webpack.IgnorePlugin({ resourceRegExp: /^(hipchat-client|loggly|mailgun-js|slack-node|nodemailer)$/u })
],
};
当我试图捆绑某个依赖log4j
的包时,也遇到了同样的错误。我的webpack版本是4.5.0。感谢@Tony Tai Nguyen的回答,我修复了webpack忽略插件的特定错误,并将以下配置添加到我的webpack.config.js
文件中。
const webpack = require('webpack');
module.exports = {
plugins: [
new webpack.IgnorePlugin(/log4j/)
],
};
是的,有一个插件可以帮助你做到这一点。你需要添加这样的东西:
new webpack.IgnorePlugin(new RegExp("/(node_modules|nodemailer)/"))
到您的webpack插件。更多信息可在此处找到:https://webpack.github.io/docs/list-of-plugins.html#ignoreplugin
相关文章:
- 在自定义mean.io包中使用angular-chart.js作为依赖项
- 为什么Airbnb风格指南说不鼓励依赖函数名称推断
- 将依赖外部库的UMD模块与browserfy捆绑在一起
- 如何将本地依赖项添加到npm项目中
- 如何在内联依赖项并将图像转换为dataURI的情况下完全提取网页
- jquery中的复选框依赖项
- 为什么react/redux前端项目在package.json中包含生产依赖项
- 单元测试依赖关系没有被嘲笑
- 依赖<选择>HTML和JavaScript菜单
- FRP 中 EventStreams 的循环依赖关系
- 节点模块依赖关系
- 使用多个依赖项加载只进行一次AJAX调用
- 限制npm依赖模块's require(隔离)的用法
- AngularJS依赖注入定时问题
- 在Meteor中使用具有依赖关系的NPM包
- Dojo AMD加载程序执行定义具有空/缺失依赖项的回调
- 依赖于缓慢加载javascript的UI
- AngularJS或jquery中的依赖级联下拉框列表
- 如何在jasmine测试中为有角度的项目注入依赖项
- requirejs定义:嵌套依赖关系