这几天更新了Blog,但是持续没有将版本发布出去,本来以为是缓存的问题等几个小时就好了,但是今天仍然无法访问。
我本地执行 hexo server
发现是能够正常访问的,这应该就是Travis的问题了。
于是我就去GitHub仓库上看Index.html的内容,发现是空的,此时就能够断定是Hexo编译静态内容出错了,然后去看Travis的持续集成日志,发现了一下错误。
1 2 3 4 5 6 7 8 9
| $ hexo clean (node:5773) Warning: Accessing non-existent property 'lineno' of module exports inside circular dependency (Use `node --trace-warnings ...` to show where the warning was created) (node:5773) Warning: Accessing non-existent property 'column' of module exports inside circular dependency (node:5773) Warning: Accessing non-existent property 'filename' of module exports inside circular dependency (node:5773) Warning: Accessing non-existent property 'lineno' of module exports inside circular dependency (node:5773) Warning: Accessing non-existent property 'column' of module exports inside circular dependency (node:5773) Warning: Accessing non-existent property 'filename' of module exports inside circular dependency INFO Deleted database.
|
经过查看GitHub上Hexo的issue得知是由于node.js的版本过高导致的,因此我把travis中node.js的版本由 stable 修改为 12 ,至此问题完美解决。
问题原因
此问题是由于在Node.js中使用了stylus,同样Hexo基于Node.js实现,因此在stylus中存在循环依赖的情况下hexo也会收到影响,导致命令执行失败。
此问题已经在新版本中的stylus中修复,不知为何Node.js的Stable版本仍未更新。
stylus pull 代码修复链接