我正在尝试将干预图像集成到我的项目中。我遵循了指南,使用了很多其他教程,无论我做什么,我总是遇到同样的错误:
Class 'Intervention\Image\ImageServiceProvider' not found
它包含在我的
composer.json
中:
{
"require": {
"laravel/envoy": "~1.0",
"laravel/installer": "^1.3",
"intervention/image": "^2.3"
}
}
我已经安装了 php-gd 东西,我包括了
Intervention\Image\ImageServiceProvider::class
和
'Image' => Intervention\Image\Facades\Image::class
在我的
config\app.php
中,但我不断收到烦人的错误消息。
也许值得一提的是,我使用的是 Linux Mint 操作系统,并且我正在使用 Homestead 虚拟机。是的,我将这些东西包含在 Homestead 版本的 Composer 中,而不是我的主 PC 的 Composer 中。使用时
PHP artisan --version
,它返回:
Laravel Framework version 5.2.43
我在虚拟机上运行了composer update,没有解决问题。我尝试从
app.php
中删除行,运行composer update,再次添加行并运行composer update,但没有成功。
config\app.php
中的内含物在哪里有关系吗?现在,别名位于列表中,提供程序位于“包服务提供程序”下。
这是完整的错误消息:
Whoops, looks like something went wrong.
1/1
FatalThrowableError in ProviderRepository.php line 146:
Class 'Intervention\Image\ImageServiceProvider' not found
in ProviderRepository.php line 146
at ProviderRepository->createProvider('Intervention\Image\ImageServiceProvider') in ProviderRepository.php line 114
at ProviderRepository->compileManifest(array('Illuminate\Auth\AuthServiceProvider', 'Illuminate\Broadcasting\BroadcastServiceProvider', 'Illuminate\Bus\BusServiceProvider', 'Illuminate\Cache\CacheServiceProvider', 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider', 'Illuminate\Cookie\CookieServiceProvider', 'Illuminate\Database\DatabaseServiceProvider', 'Illuminate\Encryption\EncryptionServiceProvider', 'Illuminate\Filesystem\FilesystemServiceProvider', 'Illuminate\Foundation\Providers\FoundationServiceProvider', 'Illuminate\Hashing\HashServiceProvider', 'Illuminate\Mail\MailServiceProvider', 'Illuminate\Pagination\PaginationServiceProvider', 'Illuminate\Pipeline\PipelineServiceProvider', 'Illuminate\Queue\QueueServiceProvider', 'Illuminate\Redis\RedisServiceProvider', 'Illuminate\Auth\Passwords\PasswordResetServiceProvider', 'Illuminate\Session\SessionServiceProvider', 'Illuminate\Translation\TranslationServiceProvider', 'Illuminate\Validation\ValidationServiceProvider', 'Illuminate\View\ViewServiceProvider', 'Intervention\Image\ImageServiceProvider', 'App\Providers\AppServiceProvider', 'App\Providers\AuthServiceProvider', 'App\Providers\EventServiceProvider', 'App\Providers\RouteServiceProvider')) in ProviderRepository.php line 60
at ProviderRepository->load(array('Illuminate\Auth\AuthServiceProvider', 'Illuminate\Broadcasting\BroadcastServiceProvider', 'Illuminate\Bus\BusServiceProvider', 'Illuminate\Cache\CacheServiceProvider', 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider', 'Illuminate\Cookie\CookieServiceProvider', 'Illuminate\Database\DatabaseServiceProvider', 'Illuminate\Encryption\EncryptionServiceProvider', 'Illuminate\Filesystem\FilesystemServiceProvider', 'Illuminate\Foundation\Providers\FoundationServiceProvider', 'Illuminate\Hashing\HashServiceProvider', 'Illuminate\Mail\MailServiceProvider', 'Illuminate\Pagination\PaginationServiceProvider', 'Illuminate\Pipeline\PipelineServiceProvider', 'Illuminate\Queue\QueueServiceProvider', 'Illuminate\Redis\RedisServiceProvider', 'Illuminate\Auth\Passwords\PasswordResetServiceProvider', 'Illuminate\Session\SessionServiceProvider', 'Illuminate\Translation\TranslationServiceProvider', 'Illuminate\Validation\ValidationServiceProvider', 'Illuminate\View\ViewServiceProvider', 'Intervention\Image\ImageServiceProvider', 'App\Providers\AppServiceProvider', 'App\Providers\AuthServiceProvider', 'App\Providers\EventServiceProvider', 'App\Providers\RouteServiceProvider')) in Application.php line 530
at Application->registerConfiguredProviders() in RegisterProviders.php line 17
at RegisterProviders->bootstrap(object(Application)) in Application.php line 203
at Application->bootstrapWith(array('Illuminate\Foundation\Bootstrap\DetectEnvironment', 'Illuminate\Foundation\Bootstrap\LoadConfiguration', 'Illuminate\Foundation\Bootstrap\ConfigureLogging', 'Illuminate\Foundation\Bootstrap\HandleExceptions', 'Illuminate\Foundation\Bootstrap\RegisterFacades', 'Illuminate\Foundation\Bootstrap\RegisterProviders', 'Illuminate\Foundation\Bootstrap\BootProviders')) in Kernel.php line 232
at Kernel->bootstrap() in Kernel.php line 127
at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 99
at Kernel->handle(object(Request)) in index.php line 53
我遇到了同样的问题,事实证明我没有在项目的根目录上运行此命令
$ php composer.phar require intervention/image
。我确实在项目的根目录上运行了它,一切都很好。
例如
Itses-MacBook-Pro:testproject bigtank$ composer require intervention/image
像这样运行它就可以了。
干杯。
从
config/app.php
中删除外观和服务提供者,然后运行composer dumpauto
(如果没有帮助,请运行composer dumpauto -o
)。之后将外观和服务提供商添加回config/app.php
。
确保您仔细遵循安装指南。
您需要先运行:
composer require intervention/image
并且您应该在安装此软件包后修改 config.app.php (所以之后 运行
composer require
)而不是之前。
经过几个小时的各种尝试并遵循在这个问题上不断重复的所有建议:我通过降级到 v2 解决了这个问题。然后第一次尝试就成功了。