首页 > 解决方案 > Jsdoc 不排除路径

问题描述

我正在使用 Jsdoc 3.6.2。我在 conf.json 中有这个源配置:

"source": {
        "exclude":["MyProj/excludeFolder"],
        "includePattern": ".+\\.js(doc|x|xinc)?$",
        "excludePattern": "(^|\\/|\\\\)_"
    }

当我jsdoc -r -c pathToMy/conf.json在 MyProj 目录上执行时,Jsdoc 不排除 'excludeFolder' 文件夹。我知道它使用了正确的 config.json 文件,因为它包含所有 .jsxinc 文件。我该如何解决?

编辑:我正在使用 Windows 10 和 vscode。Jsdoc 全局安装在 C:/Users/myUser/appData/Roaming/npm 上。我在 C:/Users/myUser/myProject 上创建了一个玩具项目,其结构如下:

myProject/
|-out/
    |-conf.json
|-src/
    |-includeFile.jsxinc
    |-excludeFolder/
        |-exludeFile.jsxinc

这是完整的 conf.json:

{
    "tags": {
        "allowUnknownTags": true
    },
    "source": {
        "exclude":["myProject/src/excludeFolder"],
        "includePattern": ".+\\.js(doc|x|xinc)?$",
        "excludePattern": "(^|\\/|\\\\)_"
    },
    "plugins": [],
    "templates": {
        "cleverLinks": false,
        "monospaceLinks": false,
        "default": {
            "outputSourceFiles": true
        }
    }
}

这是“excludeFile.jsxinc”中的代码:

/**
* @class
*/
function excludeClass(){}

这是'includeFile.jsxinc'中的代码:

/**
* @class
*/
function includeClass(){}

当我在 C:/Users/myUser/myProject: 的 power shell 上运行以下命令时jsdoc -c C:/Users/myUser/myProject/out/conf.json -r.,将为两个类生成文档:includeClass 和 excludeClass。在实际项目中,exclude 文件夹包含使用 jsdoc 的第三方库。

标签: javascriptjsdoc

解决方案


我遇到了同样的问题,我解决了这个问题:

"excludePattern": "myProject/src/excludeFolder"

并删除“排除”属性。


推荐阅读