我使用systemjs-builder和gulp将所有已编译的JS文件捆绑在一起。这是很好的工作,直到我尝试使用角材料2组件/服务。将import {MdIcon} from '@angular2-material/icon'放在文件的顶部是没有问题的,但是一旦我向directives或providers数组添加了MdIcon或任何其他重要组件或服务,我就会在构建过程buildStatic中得到一个错误,例如:
{ [Error: Error on fetch for node_modules/@angular2-material/icon/icon.js at file:///c:/websites/learn/angular2/node_modules/@angular2-material/icon/icon.js
Loading app//app/my-app.component.js
Loading app//main.js
ENOENT, open 'c:\websites\learn\angular2\node_modules\@angular2-material\icon\usr\local\google\home\jelbourn\material2\tmp\broccoli_type_script_compiler-input_base_path-IydvmmBU.tmp\0\components\icon\icon.js.map']
originalErr:
{ [Error: ENOENT, open 'c:\websites\learn\angular2\node_modules\@angular2-material\icon\usr\local\google\home\jelbourn\material2\tmp\broccoli_type_script_compiler-input_base_path-IydvmmBU.tmp\0\components\icon\icon.js.map']
cause:
{ [Error: ENOENT, open 'c:\websites\learn\angular2\node_modules\@angular2-material\icon\usr\local\google\home\jelbourn\material2\tmp\broccoli_type_script_compiler-input_base_path-IydvmmBU.tmp\0\components\icon\icon.js.map']
errno: -4058,
code: 'ENOENT',
path: 'c:\\websites\\learn\\angular2\\node_modules\\@angular2-material\\icon\\usr\\local\\google\\home\\jelbourn\\material2\\tmp\\broccoli_type_script_compiler-input_base_path-IydvmmBU.tmp\\0\\components\\icon\\icon.js.map' },
isOperational: true,
errno: -4058,
code: 'ENOENT',
path: 'c:\\websites\\learn\\angular2\\node_modules\\@angular2-material\\icon\\usr\\local\\google\\home\\jelbourn\\material2\\tmp\\broccoli_type_script_compiler-input_base_path-IydvmmBU.tmp\\0\\components\\icon\\icon.js.map' } }这个例程似乎试图从错误的位置加载icon.js.map。它不是目录c:\websites\learn\angular2\node_modules\@angular2-material\icon\,而是寻找c:\websites\learn\angular2\node_modules\@angular2-material\icon\usr\local\google\home\jelbourn\material2\tmp\broccoli_type_script_compiler-input_base_path-IydvmmBU.tmp\0\components\icon\
我是两个新材料,古普和,所以我不知道从哪里开始寻找问题。正如我提到的,如果不包括角2材料,事情就会很好。
我的gulpfile.js的相关部分
gulp.task('build-ts', function () {
return gulp.src(appDev + '**/*.ts')
.pipe(sourcemaps.init())
.pipe(typescript(tsProject))
.pipe(sourcemaps.write())
//.pipe(jsuglify())
.pipe(gulp.dest(appProd));
});
gulp.task('bundle',['build-ts'], function() {
var builder = new Builder('', './systemjs.config.js');
return builder
.buildStatic(appProd + '/main.js', appProd + '/bundle.js', { minify: true, sourceMaps: true})
.then(function() {
console.log('Build complete');
})
.catch(function(err) {
console.log('Build error');
console.log(err);
});
});有什么想法吗?
发布于 2016-05-28 09:20:26
这个问题似乎是两件事的结合:
目前,我已经降级为systemjs-builder 0.15.16,作为一种解决办法;该版本并不试图解决坏链接。
https://stackoverflow.com/questions/37496441
复制相似问题