美文网首页
一招解决hexo博客出现 "feed: ^

一招解决hexo博客出现 "feed: ^

作者: KangSmit的算法那些事儿 | 来源:发表于2020-04-06 22:26 被阅读0次

    《一招解决hexo博客出现 feed: ^ at generateError (E:\hexo\node_modules\js-yaml\lib\js-yaml\loader.js:167:10)....的错误问题》

    一、问题描述

    出现错误的原因:

    翻译开头:
    FATAL无法读取块映射条目; 在第96行第5列中,多行键可能不是隐式键:
    饲料:
    ^
    YAMLException:无法读取块映射条目; 在第96行第5列中,多行键可能不是隐式键:
    饲料:

    kangs@DESKTOP-TJ06OQ5 MINGW64 /e/hexo
    $ hexo clean && hexo g && hexo d
    FATAL can not read a block mapping entry; a multiline key may not be an implicit key at line 96, column 5:
        feed:
            ^
    YAMLException: can not read a block mapping entry; a multiline key may not be an implicit key at line 96, column 5:
        feed:
            ^
        at generateError (E:\hexo\node_modules\js-yaml\lib\js-yaml\loader.js:167:10)
        at throwError (E:\hexo\node_modules\js-yaml\lib\js-yaml\loader.js:173:9)
        at readBlockMapping (E:\hexo\node_modules\js-yaml\lib\js-yaml\loader.js:1073:9)
        at composeNode (E:\hexo\node_modules\js-yaml\lib\js-yaml\loader.js:1359:12)
        at readDocument (E:\hexo\node_modules\js-yaml\lib\js-yaml\loader.js:1519:3)
        at loadDocuments (E:\hexo\node_modules\js-yaml\lib\js-yaml\loader.js:1575:5)
        at Object.load (E:\hexo\node_modules\js-yaml\lib\js-yaml\loader.js:1596:19)
        at Hexo.yamlHelper (E:\hexo\node_modules\hexo\lib\plugins\renderer\yaml.js:7:15)
        at Hexo.tryCatcher (E:\hexo\node_modules\bluebird\js\release\util.js:16:23)
        at Hexo.<anonymous> (E:\hexo\node_modules\bluebird\js\release\method.js:15:34)
        at E:\hexo\node_modules\hexo\lib\hexo\render.js:75:22
        at tryCatcher (E:\hexo\node_modules\bluebird\js\release\util.js:16:23)
        at Promise._settlePromiseFromHandler (E:\hexo\node_modules\bluebird\js\release\promise.js:547:31)
        at Promise._settlePromise (E:\hexo\node_modules\bluebird\js\release\promise.js:604:18)
        at Promise._settlePromise0 (E:\hexo\node_modules\bluebird\js\release\promise.js:649:10)
        at Promise._settlePromises (E:\hexo\node_modules\bluebird\js\release\promise.js:729:18)
        at _drainQueueStep (E:\hexo\node_modules\bluebird\js\release\async.js:93:12)
        at _drainQueue (E:\hexo\node_modules\bluebird\js\release\async.js:86:9)
        at Async._drainQueues (E:\hexo\node_modules\bluebird\js\release\async.js:102:5)
        at Immediate.Async.drainQueues [as _onImmediate] (E:\hexo\node_modules\bluebird\js\release\async.js:15:14)
        at processImmediate (internal/timers.js:456:21)
    
    

    二、问题原因

    这个问题是由于在配置_config.yml文件的过程中没有严格按照规定的格式。
    ①在": "后面必须要加一个空格;
    ②在type,repo,branch前面加两个空格或一个水平制表符(Tab键)。

    三、问题解决

    方法一:传统方法(太麻烦),弄不好都要排查

    根据问题原因进行修改正确写法:

    deploy:
      type: git
      repo: https://github.com/webysx/webysx.github.io.git
      branch: master
    

    deploy:
        type: git
        repo: https://github.com/webysx/webysx.github.io.git
        branch: master
    

    方法二:一招制敌(我推荐此方法,前提是你有备份的_config.yml)

    将备份的博客目录下的配置文件_config.yml替换原hexo博客目录下的_config.yml即可。

    (切记:不是主题配置下的_config.yml文件),

    下面是我成功的截图:(建议先读文章末尾的友情提示,以防万一)

    image.png

    友情提示:

    备份的博客目录下的_config.yml配置可能与你最新的目录配置不同(可能展示博客网页的时候文字上有点差别),因此建议你先把原来出现问题的_config.yml配置文件改名,这样就能打开两个文件进行对比填写。
    比如我的就是这样的:

    • _config.yml是以前备份的
    • _config.yml2是出现以上错误的配置

    我把他先改名的原因是它里面可能有需要的内容,对比之后可以搬运到_config.yml中去。

    image.png

    相关文章

      网友评论

          本文标题:一招解决hexo博客出现 "feed: ^

          本文链接:https://www.haomeiwen.com/subject/tkniphtx.html