gulp build为少量图像文件名

时间:2017-05-27 11:34:37

标签: gulp jhipster

我正在努力解决gulp build的一个非常奇怪的问题。我使用带有角度1的jhipster创建了一个项目。当我使用mvn clean install -Pprod为prod构建战争或者只是进行gulp构建时,内容/图像下的所有图像文件都被正确复制到www / content / images。我的HTML模板被缩小并合并到www / app文件夹下的1个单个app-f88bd0c8d7.js文件中。但是,当我运行应用程序并打开我的index.html时,对于少数图像,我得到404错误,即使这些图像存在于内容/图像文件夹下的战争中。问题在于使用图像进行引用的名称。对于前者我在temp文件夹下的rev-manifest.json文件显示在下面的条目 - " fav-1.png":" fav-1-013b104b51.png",但此文件在我的应用程序中引用-f88bd0c8d7.js为fav-1-013b104b51-57eab5e392.png,所以如果你注意到它的附加" -57eab5e392.png"额外。只有少数图像(不是相同的图像,不断变化)才会发生这种情况。

我在SO上阅读了不少论坛,并在git上遇到了未解决的问题,但我看不到任何人面临这样的问题。我试过以下解决方案,但都没有效果:

1)添加了一个清除gulp-cache的任务,如下所示,并在gulp build期间调用它 -

var cache = require('gulp-cache');

gulp.task('clean', function () {
return del([config.dist], { dot: true });
});

gulp.task('build', ['clean'], function (cb) {
runSequence(['clearcache','copy', 'inject:vendor', 'ngconstant:prod', 'languages'], 'inject:app', 'inject:troubleshoot', 'assets:prod', cb);
});

2)尝试评论以下几行:

a) .pipe(imagemin({optimizationLevel: 5, progressive: true, interlaced: true}))

b).pipe(rev())

c)gulp.watch(config.app + 'content/images/**', ['images']);

我的jhipster版本是3.4.2,gulp版本是3.9.1

有谁知道为什么会这样?

1 个答案:

答案 0 :(得分:0)

发表我的评论作为答案:我尝试将git-rev版本从7.0.0更新为7.1.2,但它有同样的问题。所以我只是注释掉了.pipe(rev())并且它有效。现在没有发生文件散列。上次也尝试过,不知道为什么它不起作用。无论如何,它现在正在运作。如果有人发现它有用,会发布相同的答案。