Reputation: 989
I use wiredep to get all vendor components and put them in a temporary folder, but when I add jquery-ui, wiredep fails.
gulpfile.js
gulp.task('build:vendor', ['cleanVendor'], function () {
var files = require('wiredep')();
var stream = gulp.src(files.js);
// ...other code here
});
the error output:
C:\Dev\node_modules\wiredep\wiredep.js:30
('on-error', opts.onError || function(err) { throw new Error(err); })
^
Error: Error: jquery-ui is not installed. Try running `bower install` or remove
the component from your bower.json file.
at C:\Dev\node_modules\wiredep\wiredep.js:30:56
at C:\Dev\node_modules\wiredep\lib\detect-dependencis.js:149:29
at forOwn (C:\Dev\node_modules\wiredep\node_modules\lodash\dist\lodash.js:2106:15)
at Function.forEach (C:\Dev\node_modules\wiredep\node_modules\lodash\dist\lodash.js:3303:9)
at detectDependencies (C:\Dev\node_modules\wiredep\lib\detect-dependencies.js:34:7)
at wiredep (C:\Dev\node_modules\wiredep\wiredep.js:70:39)
at Object.<anonymous> (C:\Dev\gulp\prep.js:16:33)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)
bower.json:
{
"name": "project",
"version": "0.0.1",
"dependencies": {
"angular-messages": "^1.4.2",
"angular-aria": "^1.4.2",
"jquery": "^1.11.3",
"angular": "^1.4.2",
"jquery-ui": "1.11.4"
}
}
I tried adding an override to the bower.json file, but the result was the same.
The strange thing is that this works in node shell. other possibly useful information:
Upvotes: 1
Views: 1022
Reputation: 989
Found my mistake,
gulp.task('build:vendor', ['cleanVendor'], function () {
var files = require('wiredep')();
var stream = gulp.src(files.js);
// ...other code here
});
should be:
gulp.task('build:vendor', ['cleanVendor'], function () {
var files = require('wiredep')({ directory: 'bowerDirectoryHere'});
var stream = gulp.src(files.js);
// ...other code here
});
the default (I'm not sure where it is pulled from) was one level too high. The strange part is that it only fails on jquery-ui and not angular or others.
Upvotes: 1