ppoffice / hexo-theme-minos

A simple and retro styled Hexo theme, concentrated more on your ideas.
http://ppoffice.github.io/hexo-theme-minos
MIT License
764 stars 203 forks source link

Partial plugins/0 does not exist. (in common\head.ejs) #104

Closed JackEggie closed 4 years ago

JackEggie commented 4 years ago

在使用过程中报了很奇怪的错,能否请作者看一下可能的问题原因。

我的 package.json 如下:

{
  "name": "hexo-site",
  "version": "0.0.0",
  "private": true,
  "hexo": {
    "version": "4.0.0"
  },
  "dependencies": {
    "gitment": "0.0.3",
    "hexo": "^4.0.0",
    "hexo-asset-image": "1.0.0",
    "hexo-deployer-git": "^2.0.0",
    "hexo-generator-archive": "^1.0.0",
    "hexo-generator-baidu-sitemap": "^0.1.6",
    "hexo-generator-category": "^1.0.0",
    "hexo-generator-feed": "^2.0.0",
    "hexo-generator-index": "^1.0.0",
    "hexo-generator-search": "^2.4.0",
    "hexo-generator-sitemap": "^1.2.0",
    "hexo-generator-tag": "^1.0.0",
    "hexo-pagination": "^1.0.0",
    "hexo-related-popular-posts": "^3.0.6",
    "hexo-renderer-ejs": "^1.0.0",
    "hexo-renderer-marked": "^2.0.0",
    "hexo-renderer-sass": "^0.4.0",
    "hexo-renderer-stylus": "^1.1.0",
    "hexo-server": "^1.0.0",
    "hexo-tag-echarts3": "^1.1.2",
    "missing": "0.0.1"
  }
}

plugins 部分配置如下:

# Other plugins and their settings.
plugins:
  mathjax: true
  katex: false
  gallery: true
  clipboard: true
  google-analytics:
    tracking_id: 

hexo g 命令过程中报出大量相同错误,其中一个完整的错误栈如下:

ERROR Render HTML failed: tags/rust/index.html
Error: C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\themes\minos\layout\layout.ejs:4
    2| <html class="has-navbar-fixed-top">
    3| <head>
 >> 4|     <%- partial('common/head') %>
    5| </head>
    6| <body>
    7|     <%- partial('common/navbar', { page }) %>

C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\themes\minos\layout\common\head.ejs:59
    57| <% if (has_config('plugins')) { %>
    58|     <% for (let plugin in get_config('plugins')) { %>
 >> 59|     <%- partial('plugins/' + plugin, {head: true}) %>
    60|     <% } %>
    61| <% } %>
    62|

Partial plugins/0 does not exist. (in common\head.ejs)
    at Object.partial (C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\node_modules\hexo\lib\plugins\helper\partial.js:16:11)
    at eval (eval at compile (C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\node_modules\hexo-renderer-ejs\node_modules\ejs\lib\ejs.js:633:12), <anonymous>:105:17)
    at returnedFn (C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\node_modules\hexo-renderer-ejs\node_modules\ejs\lib\ejs.js:668:17)
    at Theme._View.View._compiledSync.locals [as _compiledSync] (C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\node_modules\hexo\lib\theme\view.js:119:22)
    at Theme._View.View.View.renderSync (C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\node_modules\hexo\lib\theme\view.js:48:23)
    at Object.partial (C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\node_modules\hexo\lib\plugins\helper\partial.js:34:15)
    at eval (eval at compile (C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\node_modules\hexo-renderer-ejs\node_modules\ejs\lib\ejs.js:633:12), <anonymous>:11:17)
    at returnedFn (C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\node_modules\hexo-renderer-ejs\node_modules\ejs\lib\ejs.js:668:17)
    at Theme._View.View._compiled.locals [as _compiled] (C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\node_modules\hexo\lib\theme\view.js:123:48)
    at Theme._View.View.View.render (C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\node_modules\hexo\lib\theme\view.js:29:15)
    at _compiled.then.result (C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\node_modules\hexo\lib\theme\view.js:40:23)
    at tryCatcher (C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\node_modules\hexo\node_modules\bluebird\js\release\util.js:16:23)
    at Promise._settlePromiseFromHandler (C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\node_modules\hexo\node_modules\bluebird\js\release\promise.js:547:31)
    at Promise._settlePromise (C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\node_modules\hexo\node_modules\bluebird\js\release\promise.js:604:18)
    at Promise._settlePromise0 (C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\node_modules\hexo\node_modules\bluebird\js\release\promise.js:649:10)
    at Promise._settlePromises (C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\node_modules\hexo\node_modules\bluebird\js\release\promise.js:729:18)
    at _drainQueueStep (C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\node_modules\hexo\node_modules\bluebird\js\release\async.js:93:12)
    at _drainQueue (C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\node_modules\hexo\node_modules\bluebird\js\release\async.js:86:9)
    at Async._drainQueues (C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\node_modules\hexo\node_modules\bluebird\js\release\async.js:102:5)
    at Immediate.Async.drainQueues [as _onImmediate] (C:\Users\jtang1\IdeaProjects\jackeggie.github.io-source\node_modules\hexo\node_modules\bluebird\js\release\async.js:15:14)
    at runCallback (timers.js:705:18)
    at tryOnImmediate (timers.js:676:5)
    at processImmediate (timers.js:658:5)
ppoffice commented 4 years ago

@JackEggie 请尝试hexo clean. 另外,你使用的主题版本是什么

JackEggie commented 4 years ago

作者你好。我的主题是直接从最新的 master branch 拉取的。

我找到问题了。是我的 hexo 配置 _config.yml 中也有 plugins 项,导致 head.ejs:59 代码读取的是 hexo 的配置而非主题的配置。这应该是我某次升级 hexo 版本时遗留下来的废弃配置。