我目前正在使用Laravel 4.我已将以下内容添加到我的composer.json中,并运行了更新:
"require": {
...
"koraktor/steam-condenser": "*"
套餐:https://packagist.org/packages/koraktor/steam-condenser
我遇到的问题是,如果我调用其中一个类,例如:
$steamUser = new SteamId('000000000000000000');
echo "Welcome, " . $steamUser->getNickname() . "<br />";
我收到错误Class 'SteamId' not found
如果我手动需要所需的文件,那么它可以完美地运行:
require_once('/home/path-to-laravel/laravel/vendor/koraktor/steam-condenser/lib/steam-condenser.php');
我跑了composer dump-autoload
但仍然无效。有人知道为什么吗?这真让我很沮丧:(
答案 0 :(得分:9)
Steam Condenser(尚未)符合PSR-0,因此您必须使用不同的自动加载方法(请参阅http://getcomposer.org/doc/04-schema.md#autoload)。
使用files
方法最适合:
{
"autoload": {
"files": ["vendor/koraktor/steam-condenser/lib/steam-condenser.php"]
}
}
答案 1 :(得分:1)
只需要一个包裹,不会强迫作曲家自动加载包裹。
看一下使用composer进行自动加载,但这样的事情可以让你开始:
autoload: {
"classmap": ["vendor/koraktor/steam-condenso/lib"]
}