【问题标题】:How do I exclude multiple folders in Apigen?如何在 Apigen 中排除多个文件夹?
【发布时间】:2016-07-28 04:25:36
【问题描述】:

CLI 在 ApiGen 中排除多个文件夹的正确语法是什么?

我尝试用逗号分隔它们,但这被忽略了(可能读作一条路径):

H:\SERVER>php apigen.phar generate --source [PATH] --destination [PATH] --exclude [PATH]*,[PATH]*

【问题讨论】:

    标签: php apigen


    【解决方案1】:

    使用终端,我想你可以这样做:

    php apigen.phar generate --source xxx --destination xxx --exclude folder_to_excluse --exlude yet_another_folder
    

    (在多个来源时行为相同)

    我正在尝试排除 .conf 文件中的多个文件夹,当我得到答案时,我会更新这个答案:D,希望对您有所帮助。

    -- 更新--

    要从配置文件中添加多个源和/或多个排除引用:

    # Source file or directory to parse
    source:
        # ../PASTA
        - ../sys
        - ../anotherfolder
    # Directory where to save the generated documentation
    destination: 'C:\xampp\htdocs\yourfolder'
    # List of allowed file extensions
    extensions: [php]
    # Mask to exclude file or directory from processing
    exclude: 
        - '../sys/vendor'
        - '..sys/core'
    #next elements of the config file.
    

    然后运行配置文件:

     apigen generate --config file.conf
    

    【讨论】:

    • 谢谢,但它仍然不排除文件夹,即使是配置文件。我试过这样:- '[path]/php/Vendors*',最后没有* - Vendors 中的所有类仍然出现在文档中
    • 你不应该在命令行中使用逗号或'或"。文件夹结构是什么,配置文件在哪里?
    • 暂时没有逗号或orexclude: - 'htdocs/cwd-fw/src/php/Vendors*' - 'htdocs/cwd-fw/src/php/Entities*' 也许我应该删除引号?
    • 我不知道!我注意到从配置文件我应该使用'',但从命令行我不应该使用任何'。
    • 不幸的是有或没有单引号 - 它只是忽略设置并添加所有文件夹
    【解决方案2】:

    使用下一个语法,例如跳过目录(Vendor、Config 和 X)

    对于窗户:

    php apigen.phar 生成 --source [YOUR-SOURCE-PATH] --destination [DESTINATION-PATH] --skip-doc-path "*/Vendor*" --skip-doc-path "*/Config *" --skip-doc-path "*/Docs/X*"

    Linux:

    apigen generate -s [YOUR-SOURCE-PATH] -d [DESTINATION-PATH] --skip-doc-path "*/Vendor*" --skip-doc-path "*/Config*" --skip -doc-path "*/Docs/X*"

    【讨论】:

      【解决方案3】:

      从 APIGEN 文档中排除文件夹的正确方法是指定以下选项:

      --排除/path/to/文件夹

      请注意,文件夹名称之外没有斜杠和通配符。如果您指定 --exclude /path/to/folder/ 它将不起作用,如果您这样做 --exclude /path/to/folder/* 它只会排除指定文件夹中的第一个文件。

      【讨论】:

        【解决方案4】:

        使用相对于--source 的路径。例如,如果您的源位于 /Users/abc/www 并且您想要排除 /Users/abc/www/a/Users/abc/www/b 文件夹,例如 /Users/abc/www/tests/test.php 文件,请使用如下命令:

        php apigen.phar generate --source /Users/abc/www --destination /Users/abc/docs --exclude a,b,tests/test.php
        

        没有尾部斜杠或通配符。用逗号分隔它们。 为我工作。

        【讨论】:

          猜你喜欢
          • 2020-06-17
          • 2017-03-12
          • 2013-02-24
          • 2020-03-17
          • 2020-06-19
          • 1970-01-01
          • 2021-11-30
          • 2019-07-10
          • 1970-01-01
          相关资源
          最近更新 更多