我不得不重命名我的Icons文件夹中的许多文件,因为它们的文件名中包含#
,并且这是Netifly上的禁止字符
现在在项目目录中运行gulp
或gulp build
时,出现以下错误:
$ gulp build
[19:40:52] Using gulpfile ~/Desktop/mkt_website/marketing_website/gulpfile.js
[19:40:52] Starting 'build'...
[19:40:52] Starting 'clean:tmp'...
[19:40:52] Starting 'clean:dist'...
[19:40:52] Starting 'copy:all'...
[19:40:52] Starting 'copy:libs'...
[19:40:52] Finished 'clean:tmp' after 11 ms
[19:40:52] Finished 'clean:dist' after 12 ms
[19:40:53] Finished 'copy:libs' after 1.47 s
[19:40:54] Finished 'copy:all' after 2.64 s
[19:40:54] Starting 'scss'...
[19:40:55] Finished 'scss' after 1 s
[19:40:55] Starting 'html'...
[19:40:57] 'html' errored after 2.19 s
[19:40:57] Error in plugin "gulp-file-include"
Message:
ENOENT: no such file or directory, open '/Users/kareem/Desktop/mkt_website/marketing_website/src/assets/img/icons/duotone-icons/Code/Git#1.svg'
Details:
domainEmitter: [object Object]
domainThrown: false
[19:40:57] 'build' errored after 5.84 s
编辑:
如果有帮助,请链接到我的gulpfile.js
https://pastebin.com/fEs2DrZp
NPM缓存
[通过运行npm cache verify
开始并查看所获得的内容,这可能需要一段时间,但是一旦完成,请尝试重新运行gulp。如果仍然看到错误,也可以运行npm cache clean --force
另一个可能的问题
通常[gu]中的ENOENT
错误是由于某种竞争状况引起的,我建议更新您的构建任务,以便先清除它,然后再进行复制。目前,它们正在并行运行。因此,gulp可能会删除您想要保留的文件。将构建任务更改为:gulp.task('build', gulp.series(gulp.parallel('clean:tmp', 'clean:dist'), gulp.parallel('copy:all', 'copy:libs'), 'scss', 'html'));
第二点不太可能成为问题的原因,但以后可能会困扰您。