Karma 无法加载 webpack
Karma can't load webpack
我遇到了这个错误;
16 07 2015 13:03:52.741:WARN [preprocess]: Can not load "webpack"!
Error: Can not resolve circular dependency! (Resolving: preprocessor:webpack -> webpackPlugin -> preprocessor:webpack)
我的karma.conf长得像;
var webpack = require('webpack');
module.exports = function (config) {
config.set({
browsers: [ 'Chrome' ], //run in Chrome
singleRun: true, //just run once by default
frameworks: [ 'mocha' ], //use the mocha test framework
files: [
'tests.webpack.js' //just load this file
],
preprocessors: {
'tests.webpack.js': [ 'webpack', 'sourcemap' ] //preprocess with webpack and our sourcemap loader
},
reporters: [ 'dots' ], //report results in this format
webpack: { //kind of a copy of your webpack config
devtool: 'inline-source-map', //just do inline source maps instead of the default
module: {
loaders: [
{ test: /\.js$/, loader: 'babel-loader' }
]
}
},
webpackServer: {
noInfo: true //please don't spam the console when running in karma!
}
});
};
和tests.webpack.js
var context = require.context('./src', true, /-test\.js$/); //make sure you have your directory and regex test set correctly!
context.keys().forEach(context);
我确实安装了 karma 和 karma-webpack。
有什么想法吗?
最新版本的 karma-* 项目发生了一些变化。我遇到了同样的问题,因为我安装了最新的所有东西。现在我完全尝试了版本 here 并且成功了。
我遇到了类似的错误,但已接受的解决方案中引用的 post 对我不起作用。如果您正在寻找替代品,请阅读下文!
我看到了以下错误消息:
WARN [preprocess]: Can not load "webpack"!
TypeError: Object [object Object] has no method 'refreshFiles'
at Plugin.notifyKarmaAboutChanges (/Users/abhandaru/workspace/source/macaw-campaigns/node_modules/karma-webpack/index.js:108:15)
at Plugin.<anonymous> (/Users/abhandaru/workspace/source/macaw-campaigns/node_modules/karma-webpack/index.js:72:9)
at Tapable.applyPlugins (/Users/abhandaru/workspace/source/macaw-campaigns/node_modules/webpack/node_modules/tapable/lib/Tapable.js:26:37)
我在 Github 问题上找到了这个解决方案:
https://github.com/webpack/karma-webpack/issues/65
这是我 package.json
:
中的更新行
"karma": "^0.13.3",
"karma-chrome-launcher": "^0.2.0",
"karma-jasmine": "^0.3.6",
"karma-webpack": "^1.7.0",
希望这对您有所帮助。
您应该升级 "karma" 和 "karma-webpack" 包。有类似的异常,升级到下一个版本解决了这个问题:
"karma": "0.13.18",
"karma-webpack": "1.7.0"
我遇到了这个错误;
16 07 2015 13:03:52.741:WARN [preprocess]: Can not load "webpack"!
Error: Can not resolve circular dependency! (Resolving: preprocessor:webpack -> webpackPlugin -> preprocessor:webpack)
我的karma.conf长得像;
var webpack = require('webpack');
module.exports = function (config) {
config.set({
browsers: [ 'Chrome' ], //run in Chrome
singleRun: true, //just run once by default
frameworks: [ 'mocha' ], //use the mocha test framework
files: [
'tests.webpack.js' //just load this file
],
preprocessors: {
'tests.webpack.js': [ 'webpack', 'sourcemap' ] //preprocess with webpack and our sourcemap loader
},
reporters: [ 'dots' ], //report results in this format
webpack: { //kind of a copy of your webpack config
devtool: 'inline-source-map', //just do inline source maps instead of the default
module: {
loaders: [
{ test: /\.js$/, loader: 'babel-loader' }
]
}
},
webpackServer: {
noInfo: true //please don't spam the console when running in karma!
}
});
};
和tests.webpack.js
var context = require.context('./src', true, /-test\.js$/); //make sure you have your directory and regex test set correctly!
context.keys().forEach(context);
我确实安装了 karma 和 karma-webpack。
有什么想法吗?
最新版本的 karma-* 项目发生了一些变化。我遇到了同样的问题,因为我安装了最新的所有东西。现在我完全尝试了版本 here 并且成功了。
我遇到了类似的错误,但已接受的解决方案中引用的 post 对我不起作用。如果您正在寻找替代品,请阅读下文!
我看到了以下错误消息:
WARN [preprocess]: Can not load "webpack"!
TypeError: Object [object Object] has no method 'refreshFiles'
at Plugin.notifyKarmaAboutChanges (/Users/abhandaru/workspace/source/macaw-campaigns/node_modules/karma-webpack/index.js:108:15)
at Plugin.<anonymous> (/Users/abhandaru/workspace/source/macaw-campaigns/node_modules/karma-webpack/index.js:72:9)
at Tapable.applyPlugins (/Users/abhandaru/workspace/source/macaw-campaigns/node_modules/webpack/node_modules/tapable/lib/Tapable.js:26:37)
我在 Github 问题上找到了这个解决方案:
https://github.com/webpack/karma-webpack/issues/65
这是我 package.json
:
"karma": "^0.13.3",
"karma-chrome-launcher": "^0.2.0",
"karma-jasmine": "^0.3.6",
"karma-webpack": "^1.7.0",
希望这对您有所帮助。
您应该升级 "karma" 和 "karma-webpack" 包。有类似的异常,升级到下一个版本解决了这个问题:
"karma": "0.13.18",
"karma-webpack": "1.7.0"