簡體   English   中英

使用phing生成phpdoc時出錯

[英]Error generating phpdoc with phing

我正在為我的項目配置Jenkins,我想創建phpdoc,但是它不起作用。 我正在使用phing,而我的服務器與Debian一起使用。

我所做的:

  • 安裝phpDoc

     pear install phpdoc/phpDocumentor-beta 
  • 撥號:

     <target name="phpdoc"> <phpdoc2 destdir="${workspace}/app/docs" template="responsive"> <fileset dir="./src"> <include name="**.*.php" /> </fileset> </phpdoc2> </target> 

我收到此錯誤:

    PHP Fatal error:  Call to undefined method phpDocumentor\Parser\Parser::setTitle() in /usr/share/php/phing/tasks/ext/phpdoc/PhpDocumentor2Wrapper.php on line 169
    PHP Stack trace:
    PHP   1. {main}() /usr/share/php/phing.php:0
    PHP   2. Phing::fire() /usr/share/php/phing.php:43
    PHP   3. Phing::start() /usr/share/php/phing/Phing.php:270
    PHP   4. Phing->runBuild() /usr/share/php/phing/Phing.php:170
    PHP   5. Project->executeTargets() /usr/share/php/phing/Phing.php:572
    PHP   6. Project->executeTarget() /usr/share/php/phing/Project.php:791
    PHP   7. Target->performTasks() /usr/share/php/phing/Project.php:818
    PHP   8. Target->main() /usr/share/php/phing/Target.php:321
    PHP   9. Task->perform() /usr/share/php/phing/Target.php:298
    PHP  10. PhingCallTask->main() /usr/share/php/phing/Task.php:260
    PHP  11. PhingTask->main() /usr/share/php/phing/tasks/system/PhingCallTask.php:158
    PHP  12. PhingTask->processFile() /usr/share/php/phing/tasks/system/PhingTask.php:150
    PHP  13. Project->executeTarget() /usr/share/php/phing/tasks/system/PhingTask.php:277
    PHP  14. Target->performTasks() /usr/share/php/phing/Project.php:818
    PHP  15. Target->main() /usr/share/php/phing/Target.php:321
    PHP  16. Task->perform() /usr/share/php/phing/Target.php:298
    PHP  17. PhpDocumentor2Task->main() /usr/share/php/phing/Task.php:260
    PHP  18. PhpDocumentor2Wrapper->run() /usr/share/php/phing/tasks/ext/phpdoc/PhpDocumentor2Task.php:147
    PHP  19. PhpDocumentor2Wrapper->parseFiles() /usr/share/php/phing/tasks/ext/phpdoc/PhpDocumentor2Wrapper.php:201
    Build step 'Invoke Phing targets' marked build as failure

似乎找不到phpDocumentor類,但我找不到原因!

我的包含路徑是。:/ usr / share / php:/ usr / share / pear,而phpDocumentor安裝在/ usr / share / pear文件夾中。

有任何想法嗎 ?

編輯:我創建了一個簡單的測試文件:

    # cat test.php
    <?php
    $parser = new \phpDocumentor\Parser\Parser();

但是我得到這個錯誤:

    # php -f test.php
    PHP Fatal error:  Class 'phpDocumentor\Parser\Parser' not found in /var/www/test.php on line 2
    PHP Stack trace:
    PHP   1. {main}() /var/www/test.php:0

為什么在我執行以下操作時不安裝phpDocumentor接縫:

pear info phpdoc/phpDocumentor
About pear.phpdoc.org/phpDocumentor-2.0.0
=========================================
Release Type          PEAR-style PHP-based Package
Name                  phpDocumentor
Channel               pear.phpdoc.org
[...]
Release Date          2013-08-03 06:08:35
Release Version       2.0.0 (stable)
API Version           2.0.0 (stable)
package.xml version   2.0
Last Modified         2013-08-06 08:17
Previous Installed    - None -
Version

我終於使用exec命令實現了:

<target name="phpdoc" description="API Documentation">
     <exec command="phpdoc
        -d ${ws}/src
        -t ${builddir}/reports/doc/
        --template responsive
    " />
</target>

較少的選項,雖然不是很漂亮,但是可以。

下載穩定的1.4.4(穩定版)-http: //pear.php.net/package/PhpDocumentor/

嘗試設置標題:

<target name="phpdoc">
     <phpdoc2 title="Some Title" destdir="${workspace}/app/docs" template="responsive">
         <fileset dir="./src">
             <include name="**.*.php" />
         </fileset>
     </phpdoc2>
 </target>

我的直覺是您正在安裝phpDocumentor 1.x,但使用的是為phpDocumentor 2.x設計的Phing任務。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM