很坑的问题,解决了两天,好久没有遇到这么棘手的问题了。
百度上搜了好几波都搜不出来,最后还是靠google。
说一下我的问题,项目是ubuntu+Linux+django。
因为是前后端不分离的项目,为了用gulp着实麻(cao)烦(dan)了一点!
起因就是,给项目写好package.json和gulpfile.js文件后,运行gulp
卡在了gulp-rev这一步!
死活不生成rev-manifest.json文件!!!
和另一个同事找了一下午没解决,但是把配置文件拷贝到虚拟机外面的小demo试一下,它明明就是生效的!!
只好在虚拟机外面重新clone了项目,配置项目环境不是一般的麻(cao)烦(dan),
因为外部是windows系统,大家懂得,环境多难配置,一个个去配置PATH要蒙圈了。
配了一天,我还是放弃了windows!!因为项目依赖的环境忒复杂了
所以今天我又开始研究虚拟机里面为什么不生成那个文件,
百度一波还是没有,也没抱希望的google一波,
终于,这次输入的搜索条件也许匹配度高了一点吧,竟然搜出来一个相同的问题,
这里也放上原链接:
https://github.com/sindresorhus/gulp-rev/issues/225
其实,问题就出在gulp-rev的版本上(原谅我废话了这么多,因为答案实在是......哎)
原来用的是
"gulp-rev": "^8.1.1"
改成
"gulp-rev": "^7.1.2"
就可以了,是不是很恶心,哈哈哈。
看大神分析是8以上出现的问题,大概原因就是
That's because Buffer.from has been introduced in Node v6.0.0. The fix is whether to update your Node version or stick with gulp-rev 7.1.2.
This is an issue in newer version of Node. The newer overloads require an array, no overload for string. Have to change Line 156 to new Buffer instead of Buffer.from
原链接写的很清楚,我就不废话了。
写下这篇日记,方便大家baidu的时候就能搜到......哈哈哈