我遇到FuelPHP无法自动加载课程的问题。在我的登台服务器(Ubuntu,PHP 5.3.10)上,它无法在fuel/app/classes
目录中找到自定义类,也无法运行oil test
(我收到错误消息{{1} })。奇怪的是,它在我的本地开发版本(Windows,PHP 5.3.6)上运行良好。
我怀疑它可能与Composer有关,我在这个项目上第一次使用它,但是当我从bootstrap.php注释掉行sh: 1: phpunit: not found
时,问题并没有解决。应用仍然无法从require APPPATH.'vendor/autoload.php';
)
我很难过:我在很多项目中都使用过FuelPHP,从未在Autoloader上遇到任何问题。特别令人费解的是,相同的代码似乎在一个地方工作得很好而在另一个地方却没有。我非常感谢有关如何解决此问题的任何建议。
答案 0 :(得分:1)
我意识到很久以前就问过这个问题了,但我遇到了同样的问题,所以为了这个问题的其他人的利益,这对我有用:
使用以下代码在oil.php
目录中创建一个名为app/config
的新php文件:
<?php
// Unit tests will get shell error 'phpunit: command not found' unless
// the path to php unit is specified.
return array (
'phpunit' => array (
'binary_path' => 'fuel/vendor/bin/phpunit',
),
);
我正在使用燃料1.7.2。可以找到更多信息here。
虽然上面的代码修复了特定的PHPunit问题,但我仍然有issues with Fuel and autoloaders not working。 Fuel PHP没有遵循psr-4(许多核心燃料文件在同一个文件中有多个类定义),这可能会导致某些自动加载器出现问题。