Класс «Collective\Html\HtmlServiceProvider» не найден в laravel 5?

В настоящее время я установил laravel и пытаюсь создать свое первое приложение, однако, когда мне потребовался коллектив laravel, я получаю сообщение об ошибке выше.

вот мой composer.json

{
 "require": {
    "laravel/installer": "~1.1",
    "laravelcollective/html": "5.1.*"
 }
}

и в моем app.php есть эти строки.. provider=>

 ...Illuminate\Validation\ValidationServiceProvider::class,
    Illuminate\View\ViewServiceProvider::class,
    Collective\Html\HtmlServiceProvider::class,

псевдонимы =>

 ...'Validator' => Illuminate\Support\Facades\Validator::class,
    'View'      => Illuminate\Support\Facades\View::class,
    'Form'      => Collective\Html\FormFacade::class,
    'Html'      => Collective\Html\HtmlFacade::class,

я читал и искал решения, но в настоящее время они никогда не работали для меня.. любая помощь будет оценена.. спасибо заранее..

ОБНОВЛЕНИЕ на данный момент это моя команда. введите здесь описание изображения


person johnguild    schedule 13.10.2015    source источник
comment
Какие шаги вы предприняли для установки laravelcollective?   -  person James    schedule 13.10.2015
comment
@james я следил за документацией здесь laravelcollective.com/docs/5.0/html   -  person johnguild    schedule 13.10.2015
comment
Итак, вы определенно запустили composer update после добавления этой строки в composer.json?   -  person James    schedule 13.10.2015
comment
да, я также попробовал другую версию, например ~ 5.0, 5.1. *, а затем сделал обновление композитора после редактирования composer.json.   -  person johnguild    schedule 13.10.2015


Ответы (3)


вам нужно использовать php artisan serve в папке вашего проекта. не внутри папки композитора. например, laravel — это папка моего проекта внутри каталога www, поэтому f:/wamp/www/laravel> php artisan serve

person Sunil    schedule 13.10.2015

Вот шаги, которые я предпринял, чтобы установить его в своем приложении в Laravel 5.1.

Я бы посоветовал вам удалить папку поставщика для этого из ваших файлов поставщиков и удалить эту строку из вашего composer.json file, чтобы начать с нуля.

Сначала потребуется пакет:

composer require "illuminate/html":"5.0.*"

Затем добавьте его к своим провайдерам:

'providers' => [
    ...

    'Illuminate\Html\HtmlServiceProvider',
],

Наконец, добавьте его в свои псевдонимы:

'aliases' => [

    ...

    'Form'=> 'Illuminate\Html\FormFacade', 
    'HTML'=> 'Illuminate\Html\HtmlFacade',
],

Вы можете проверить, работает ли он, выполнив следующие действия:

1) php artisan tinker

2) > Form::text('foo')

Что должно выводить "<input name=\"foo\" type=\"text\">"

person James    schedule 13.10.2015
comment
но я читал, что Illuminate\Html\HtmlServiceProvider больше не является основным элементом и вместо этого следует использовать laravelcollective.. это неправильно? - person johnguild; 13.10.2015
comment
Если вам требуется пакет и выполните эти шаги, он будет работать нормально. Но вы правы, что это больше не основной пакет. Именно поэтому мы требуем этого. - person James; 13.10.2015
comment
Это шаги, которые я предпринял для нескольких приложений Laravel 5.1, которые я создал, и они всегда работают на 100%. - person James; 13.10.2015
comment
это то, что я сделал, удалил папку поставщика, обновил файл composer.json только с помощью laravel/installer: ~ 1.1 и запустил обновление композитора, после чего создал свое приложение и выполнил ваши инструкции, однако теперь я получаю класс «Illuminate». Html\HtmlServiceProvider' не найден, :( - person johnguild; 13.10.2015
comment
Вы удалили классы из app.php, когда удаляли все? - person James; 13.10.2015
comment
Похоже на проблему установки. - person James; 13.10.2015
comment
если это так, я думаю, мне нужно перезапустить с нуля .. спасибо за вашу помощь и терпение, @James действительно ценит это. - person johnguild; 13.10.2015
comment
Нет ничего плохого в том, чтобы сделать это со свежей установкой. Следуйте этим шагам, и вы должны быть хороши как золото. Обратите внимание, что этот метод использует команду composer require, поэтому она добавит ее к вашему composer.json для вас, так что вам это не нужно. Если это работает, пожалуйста, проголосуйте/примите как ответ :) - person James; 13.10.2015

Похоже, вы установили пакет HTML и пытаетесь использовать его в своем «старом» приложении laravel.

Если вы устанавливаете новое приложение с помощью композитора, оно должно работать нормально, но если вы пытаетесь использовать его в своем «старом» приложении, которое вы создали до установки коллектива form/html, попробуйте загрузить файлы и скопируйте файлы из папки src в папку config вашего приложения, и все готово.

person Ghaith Falah Aljabiri    schedule 07.11.2017