我是PHP Laravel的新手。我已使用作曲家composer require djchen/oauth2-fitbit
添加了一个包。似乎我的composer.json没有更新自动加载器,因为我不断收到以下错误:
Fatal error: Class 'djchen\OAuth2\Client\Provider\Fitbit' not found in xxx on line 5
。
这就是第5行的样子:
use djchen\OAuth2\Client\Provider\Fitbit;
$provider = new Fitbit([ // line 5
这是我的composer.json(必要的位)
{
"name": "laravel/laravel",
"description": "The Laravel Framework.",
"keywords": ["framework", "laravel"],
"license": "MIT",
"type": "vcs",
"require": {
"php": ">=5.6.4",
"djchen/oauth2-fitbit": "^1.0",
"laravel/framework": "5.4.*",
"laravel/tinker": "~1.0"
},
"require-dev": {
"fzaninotto/faker": "~1.4",
"mockery/mockery": "0.9.*",
"phpunit/phpunit": "~5.7"
},
"autoload": {
"classmap": [
"database"
],
"psr-4": {
"App\\": "app/",
"djchen\\OAuth2\\Client\\": "src/" // added manually - still does not work
}
},
"autoload-dev": {
"psr-4": {
"Tests\\": "tests/",
}
},
我完成了我的研究,并且我尝试过作曲家安装,作曲家更新和作曲家转储自动加载。这些都没有奏效。任何帮助将不胜感激。
答案 0 :(得分:0)
我们在这里使用核解决方案,你的自动加载文件可能会被缓存到某个地方。
运行以下命令:
$ php artisan clear-compiled
$ php artisan cache:clear
$ php artisan config:clear
$ php artisan optimize
如果这不起作用,请尝试手动删除您可以找到的所有自动加载文件并运行composer update
。
答案 1 :(得分:0)
回答我自己的问题..
我可能应该真正强调我是Laravel的新手。我设法通过简单地包括自动加载器来解决这个问题:
include('vendor/autoload.php');
之后还调用了composer dump-autoload。