jsdoc错误信息:“没有要处理的输入文件”

13

已经本地安装了 Jsdoc (npm install jsdoc)。我尝试执行以下命令时出现以下错误:

.\node_modules.bin\jsdoc --debug ./lib/JavaScriptSource.js 输出如下: DEBUG: JSDoc 3.3.0-dev (Sun, 15 Jun 2014 18:39:52 GMT) DEBUG: 环境信息: {"env":{"conf":{"tags":{"allowUnknownTags":true},"templates":{"monospaceLinks":false,"cleverLinks":false,"default":{"outputSourceFiles":true}},"source":{"includePattern":".+\.js(doc)?$","excludePattern":"(^|\/|\\)_"},"plugins":[]},"opts":{"_":["./lib/JavaScriptSource.js"],"debug":true,"destination":"./out/","encoding":"utf8"}}} There are no input files to process.
JSDoc 3.3.0-dev (Sun, 15 Jun 2014 18:39:52 GMT)
选项: -t, --template <value> 要使用的模板路径。默认值: path/to/jsdoc/templates/default -c, --configure <value> 配置文件的路径。 默认值:path/to/jsdoc/conf.json ..... </code>

1
./lib/JavaScriptSource.js 存在吗? - Pointy
是的,它确实存在。在jsdoc源代码的jsdoc/cli.js文件中,在调用cli.scanFiles()方法之后,env.sourceFiles为空。我还没有详细查看这个位置周围的代码。 - TDreama
在jsdoc/cli.js的第263行,我能够执行一个 code var fileData = fs.readFileSync(env.opts._[0], 'utf8'); console.log(fileData.toString()); code ,它会显示内容。env对象在原始帖子中显示。 - TDreama
1
Turns是jsdoc中的一个开放性错误,它无法处理以“_”开头的文件路径。https://github.com/jsdoc3/jsdoc/issues/308。同时提供了解决方案。 - TDreama
1个回答

15

Turns是jsdoc中一个未解决的问题,它不会处理以"_"开头的文件路径。github.com/jsdoc3/jsdoc/issues/308。提供了解决方案。

默认的excludePattern(^|/| \ _)忽略以下划线开头的路径。

以下是引自https://github.com/jsdoc3/jsdoc/issues/308的解决方案:

"要更改默认行为:

将conf.json.EXAMPLE复制到新文件conf.json。您可以将其放在JSDoc目录或另一个目录中。如果您将其放在另一个目录中,则需要使用-c选项告诉JSDoc在哪里找到它:jsdoc -c path/to/conf.json 打开文本编辑器中的conf.json。查找source.excludePattern属性,并将其更改为空字符串。"


2
这是预期的行为,而不是错误,这就是为什么该问题已经关闭了一年半的原因。 - Jeff Williams
6
默认情况下,JSDoc会忽略以下划线开头的文件和目录。因此,如果我的文件路径包含名称不合适的文件夹,它也会被忽略。 - artin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接