找不到PHPDox文件

时间:2016-04-26 15:31:10

标签: php symfony jenkins continuous-integration windows-server-2012-r2

我试图在Windows Server 2012上运行phpdox - 但我收到错误:

PHP Version: 7.0.5 (WINNT)
PHPDox Version: 0.8.1.1
Exception: TheSeer\phpDox\Generator\TokenFileException (Code: 1)
Location: phar://D:/htdocs/AscPro/bin/phpdox-0.8.1.1.phar/phpdox/generator/pro
ject/TokenFile.php (Line 19)

File 'file:/D:/htdocs/AscPro/build/phpdox/tokens/AppBundle/AppBundle.php.xml'
not found

我检查了位置,文件没有丢失。 我在与jenkins的持续集成过程中遇到了这个问题。这很奇怪,因为同样的phpdox版本在ubuntu上对我有用。也许这与以下事实有关:所有节目都在" C:",包括詹金斯 - 但jenkins工作空间位于" D:"?

2 个答案:

答案 0 :(得分:1)

我认为问题在于使用WINDOWS路径不正确。请看这个问题:

Help with windows path - PHP

作为快速测试,请尝试将file_exists检查更改为已编码的参数:

file:///C:\htdocs\AscPro\build\phpdox\tokens\AppBundle\AppBundle.php.xml

答案 1 :(得分:0)

我担心这是一个phpdox的错误。

在检查存在之前,Phpdox将所有路径转换为unix样式。

You can see this code here

也许你可以破解功能exists

取代: return file_exists($this->getPathname());

于: return file_exists(parent::getPathname());