Webpack突然抛出此错误:
TypeError:webpack.validateSchema不是一个函数
星期五一切正常,今天不工作。自周五以来,没有新的提交要掌握。
修剪了无效的NPM,删除了NPM文件夹并重新安装,没有骰子。检出过一个星期未从Master重新定级的以前的分支机构。还是一样。
有人有主意吗?
Webpack突然抛出此错误:
TypeError:webpack.validateSchema不是一个函数
星期五一切正常,今天不工作。自周五以来,没有新的提交要掌握。
修剪了无效的NPM,删除了NPM文件夹并重新安装,没有骰子。检出过一个星期未从Master重新定级的以前的分支机构。还是一样。
有人有主意吗?
当我们将angular / cli升级到1.6.3并测试ng -v时,遇到了同样的问题,导致webpack出现错误。因此,我们碰巧卸载了webpack,清理了缓存,然后再次在全局范围内安装了webpack。它解决了问题
我通过运行以下命令使其工作:
npm install --save-dev webpack-dev-server@beta webpack@beta
当我这样做时,它对我有用:
卸载以下软件包:
npm卸载webpack webpack-dev-server --save -dev
安装以下软件包:
npm install --save -dev webpack@3.10.0
npm install --save -dev webpack-cli@2.0.10
npm install --save -dev webpack-dev-server@2.9.7
我也遇到同样的错误。我将我的webpack-dev-server版本锁定在package.json文件中,这防止了错误的发生。但这并不能解决错误的根本问题。
这是我正在使用的webpack-dev-server的版本,但我确定以后的版本也能正常工作:“ webpack-dev-server”:“ 2.1.0-beta.9”,
当我删除^并使用确切的版本时,它对我有用。
从
"webpack": "2.1.0-beta.25",
"webpack-dev-middleware": "^1.6.1",
"webpack-dev-server": "^2.1.0-beta.9",
"webpack-md5-hash": "^0.0.5",
"webpack-merge": "^0.14.1"
至
"webpack": "2.1.0-beta.25",
"webpack-dev-middleware": "1.6.1",
"webpack-dev-server": "2.1.0-beta.9",
"webpack-md5-hash": "0.0.5",
"webpack-merge": "0.14.1"
看起来像npm bug,因为webpack-dev-server@2.1.0-beta.11
需要webpack@^2.1.0-beta.26
但npm无法安装它。
无需过多更新即可避免该问题的最简单方法是将package.json中的依赖项更改为
"webpack-dev-server": "2.1.0-beta.10",
而不是像
"webpack-dev-server": "^2.1.0-beta.9",
版本前的“ ^”字符表示“与...兼容”。删除它完全符合该版本。
不要忘记跑步npm install
或npm update
之后。
今天,我几乎与您同时遇到了这个问题,事实证明webpack再次被更新了。
这是我所做的修复工作:
首先我跑npm install
和npm update
,看看有什么结果。我运行这两个命令是因为npm有一种怪异的方式来报告未满足的依赖关系,有时是错误的,当您重新运行the npm update
或the时npm install
,您将意识到未满足的依赖关系不再是问题。
运行这些命令后,我注意到剩下的唯一消息是警告:
npm WARN webpack-dev-server@2.1.0-beta.11 requires a peer of webpack@^2.1.0-beta.26 but none was installed.
为了解决这个问题,我将package.json
文件更改为read "webpack": "2.1.0-beta.26"
,"webpack": "2.1.0-beta.25"
然后运行另一个文件npm install
。
此后,当我尝试运行时遇到另一个错误,该错误npm start
表明我的webpack配置文件存在问题。就我而言,我转到开发环境的webpack配置文件(因为我尚未投入生产),我发现了罪魁祸首,这是一个无效参数,称为“ outputPath”。
我注释掉了那条线,现在一切正常。
希望这会有所帮助,暂时可能只是一个hack,但希望这是朝正确方向迈出的一步。
更新:
好的,所以我对一切“正常工作”都有些不对。事实证明,我的某些装载机无法正常工作。Bootstrap和其他一些东西没有正确加载,破坏了我的风格。因此,为了使其恢复到以前的状态,我删除了node_modules
文件夹并在中npm install
使用以下命令运行package.json
:
"webpack": "2.1.0-beta.25",
"webpack-dashboard": "^0.1.8",
"webpack-dev-middleware": "^1.6.1",
"webpack-dev-server": "2.1.0-beta.9",
"webpack-md5-hash": "^0.0.5",
"webpack-merge": "^0.15.0",
希望像这样的讨论将帮助我们弄清楚如何正确发布新版的webpack。
我遇到了这个问题,因为我安装了一个较旧的全局版本的webpack,这在某种程度上与项目特定的webpack冲突。
我首先通过运行以下命令卸载了全局(旧)webpack:
然后,我运行了特定于项目的Webpack。在Windows上,webpack.cmd驻留在node_modules.bin \中,但是如果您通过npm任务运行webpack,则npm将自动搜索.bin文件夹,因此无需显式指定该路径。
package.json中正在运行的npm run任务如下所示: