首页 > 解决方案 > 生成文档时如何修复“ENOENT:没有这样的文件或目录,打开'.../docs/assets/css/main.css'”?

问题描述

我正在尝试使用 typedoc 自动生成 Angular 应用程序的文档。

每当我运行npx typedoc --out docs app --exclude "**/*.{spec.ts}" --exclude node_modules --ignoreCompilerErrors时,它都会生成 Markdown 文件,并且渲染完成。然后它会因上述错误而中止,.../docs/assets/css/main.css说不存在。

据我了解,这main.css是 typedoc 堆栈的一部分,应在运行此命令时将其移至 assets 文件夹。

我误解了这个吗?失败的原因是什么,我该如何解决?


我用 typedoc 玩了一点,问题似乎只出现在“默认”主题中:

$ typedoc --out docs app --theme default
Loaded plugin /home/name/work/stuff/src/main/webapp/node_modules/typedoc-plantuml
Loaded plugin /home/name/work/stuff/src/main/webapp/node_modules/typedoc-plugin-markdown

Using TypeScript 3.8.3 from /usr/local/lib/node_modules/typescript/lib
Rendering [========================================] 100%
fs.js:130
    throw err;
    ^

Error: ENOENT: no such file or directory, open '/home/name/work/stuff/src/main/webapp/src/docs/assets/css/main.css'
    at Object.openSync (fs.js:451:3)
    at Object.readFileSync (fs.js:353:35)
    at Renderer.<anonymous> (/home/name/work/stuff/src/main/webapp/node_modules/typedoc-plantuml/lib/plugin.js:117:23)
    at triggerEvents (/usr/local/lib/node_modules/typedoc/dist/lib/utils/events.js:128:43)
    at triggerApi (/usr/local/lib/node_modules/typedoc/dist/lib/utils/events.js:110:13)
    at eventsApi (/usr/local/lib/node_modules/typedoc/dist/lib/utils/events.js:21:18)
    at Renderer.trigger (/usr/local/lib/node_modules/typedoc/dist/lib/utils/events.js:264:13)
    at Renderer.render (/usr/local/lib/node_modules/typedoc/dist/lib/output/renderer.js:39:18)
    at CliApplication.generateDocs (/usr/local/lib/node_modules/typedoc/dist/lib/application.js:100:23)
    at CliApplication.bootstrap (/usr/local/lib/node_modules/typedoc/dist/lib/cli.js:48:26) {
  errno: -2,
  syscall: 'open',
  code: 'ENOENT',
  path: '/home/name/work/stuff/src/main/webapp/src/docs/assets/css/main.css'
}

typedoc --out docs app --theme minimal运行没有问题。

标签: angulartypescriptdocumentationdocumentation-generationtypedoc

解决方案


推荐阅读