Invalid configuration object. Webpack has been initialised using a configuration
Solution 1
Upgrade Angular CLI to 1.0.0-beta.15
or better:
npm uninstall angular-cli -g
npm cache clean
npm install angular-cli@latest -g
which generates working scaffolds:
ng new try4
cd try4
ng serve
If you have an existing project built with prior versions of Angular CLI, you will need to upgrade:
rm -rf node_modules dist tmp
npm install angular-cli@latest --save-dev
ng init
and carefully review each of the differences in each file.
Root cause: Once a version of Angular CLI is working, it should not stop working, of course. Unfortunately, angular-cli 1.0.0-beta.14
has a "caret" dependency on webpack: ^2.1.0-beta.22
-- note the ^
. Yesterday, webpack
released 2.1.0-beta.23
which is not compatible with angular-cli 1.0.0-beta.14
so, due to the caret (^
), deployed versions of angular-cli 1.0.0-beta.14
have stopped working. To address this problem, angular-cli 1.0.0-beta.15
was released yesterday with a fixed webpack: 2.1.0-beta.22
dependency -- note the lack of the ^
-- thus avoiding the breaking upgrade to webpack. See https://github.com/angular/angular-cli/issues/2234 for details.
Project work-around: If you can't, or won't, upgrade Angular CLI, you can work-around the caret webpack dependency by adding a fixed webpack dependency to your own project. You'll have to maintain this dependency going forward, of course:
npm install [email protected] --save-dev
Choose this work-around if you can't upgrade Angular CLI.
Solution 2
I just ran into this issue today running an ng2.0.0 project the solution was to downgrade webpack.
npm uninstall webpack --save-dev
npm install [email protected] --save-dev
this will probably be fixed soon on the package.json that angular-cli 1.0.0-beta.15
generates.
this fix should resolve the issue on any existing projects.
Solution 3
Are you using webpack2 beta?
If yes you can't have custom properties in configuration now.
you need to add your custom properties via plugins:
plugins: {
new webpack.LoaderOptionsPlugin({
options: {
postcss: ...
}
})
}
Solution 4
npm uninstall webpack --save-dev
followed by
npm install [email protected] --save-dev
Then you should be able to gulp again. Fixed the issue for me.
![Jan Nielsen](https://i.stack.imgur.com/bHXDR.jpg?s=256&g=1)
Comments
-
Jan Nielsen over 3 years
As of this morning, with Angular CLI
1.0.0-beta.14
Ing new try3
andng serve
and get the following error:Invalid configuration object. Webpack has been initialised using a configuration object that does not match the API schema. - configuration has an unknown property 'tslint'. These properties are valid: object { amd?, bail?, cache?, context?, devServer?, devtool?, entry, externals?, loader?, module?, name?, dependencies?, node?, output?, plugins?, profile?, recordsInputPath?, recordsOutputPath?, recordsPath?, resolve?, resolveLoader?, stats?, target?, watch?, watchOptions? } - configuration.module has an unknown property 'preLoaders'. These properties are valid: object { rules?, loaders?, noParse?, unknownContextRequest?, unknownContextRegExp?, unknownContextRecursive?, unknownContextCritical?, exprContextRequest?, exprContextRegExp?, exprContextRecursive?, exprContextCritical?, wrappedContextRegExp?, wrappedContextRecursive?, wrappedContextCritical? } Options affecting the normal modules (`NormalModuleFactory`). - configuration.node.global should be a boolean. - configuration.resolve has an unknown property 'root'. These properties are valid: object { modules?, descriptionFiles?, plugins?, mainFields?, aliasFields?, mainFiles?, extensions?, enforceExtension?, moduleExtensions?, enforceModuleExtension?, alias?, symlinks?, unsafeCache?, cachePredicate?, fileSystem?, resolver? } - configuration.resolve.extensions[0] should not be empty. WebpackOptionsValidationError: Invalid configuration object. Webpack has been initialised using a configuration object that does not match the API schema. - configuration has an unknown property 'tslint'. These properties are valid: object { amd?, bail?, cache?, context?, devServer?, devtool?, entry, externals?, loader?, module?, name?, dependencies?, node?, output?, plugins?, profile?, recordsInputPath?, recordsOutputPath?, recordsPath?, resolve?, resolveLoader?, stats?, target?, watch?, watchOptions? } - configuration.module has an unknown property 'preLoaders'. These properties are valid: object { rules?, loaders?, noParse?, unknownContextRequest?, unknownContextRegExp?, unknownContextRecursive?, unknownContextCritical?, exprContextRequest?, exprContextRegExp?, exprContextRecursive?, exprContextCritical?, wrappedContextRegExp?, wrappedContextRecursive?, wrappedContextCritical? } Options affecting the normal modules (`NormalModuleFactory`). - configuration.node.global should be a boolean. - configuration.resolve has an unknown property 'root'. These properties are valid: object { modules?, descriptionFiles?, plugins?, mainFields?, aliasFields?, mainFiles?, extensions?, enforceExtension?, moduleExtensions?, enforceModuleExtension?, alias?, symlinks?, unsafeCache?, cachePredicate?, fileSystem?, resolver? } - configuration.resolve.extensions[0] should not be empty. at webpack (/home/jan/src/fm-repos/try3/node_modules/webpack/lib/webpack.js:16:9) at Class.run (/home/jan/src/fm-repos/try3/node_modules/angular-cli/tasks/serve-webpack.js:23:27) at /home/jan/src/fm-repos/try3/node_modules/angular-cli/commands/serve.js:84:26 at process._tickCallback (internal/process/next_tick.js:103:7)
The last time I
ng new
a project was a few days ago -- at that point it worked file. Here's my environment:angular-cli: 1.0.0-beta.14 node: 6.5.0 os: linux x64