web-dev-qa-db-ja.com

Laravel 5 AWSでクラス 'Collective \ Html \ HtmlServiceProvider'が見つかりません

Class 'Illuminate\Html\HtmlServiceProvider' not found Laravel 5 など、同じエラーを伴う他の質問がたくさんあります。

私の問題は、ローカル(XAMPP)でこれを解決するために提案されたすべての手順を実行し、問題なく修正したことです。問題は、AWS ubuntuボックス(nginx)にデプロイしようとしたときです。私はすべての通常の指示に従いました: http://laravelcollective.com/docs/5.1/html#installation

ローカルからプッシュしたものからgit pullを行ったときに、プロバイダーとエイリアスが追加されていました。おそらく、このファイルはgitignoredされていて、変更はサーバー上で手動で行われているはずですか?

Next, add your new provider to the providers array of config/app.php:

  'providers' => [
    // ...
    Collective\Html\HtmlServiceProvider::class,
    // ...
  ],

Finally, add two class aliases to the aliases array of config/app.php:

  'aliases' => [
    // ...
      'Form' => Collective\Html\FormFacade::class,
      'Html' => Collective\Html\HtmlFacade::class,
    // ...
  ],

その後、手動で追加しました:

Begin by installing this package through Composer. Edit your project's composer.json file to require laravelcollective/html.

"require": {
    "laravelcollective/html": "5.1.*"
}

そして最後に、私は走った:

composer.phar update

エラーをスローするこのコマンドを実行していました:

PHP Warning:  Module 'mcrypt' already loaded in Unknown on line 0
> php artisan clear-compiled
PHP Warning:  Module 'mcrypt' already loaded in Unknown on line 0
PHP Fatal error:  Class 'Collective\Html\HtmlServiceProvider' not found in /usr/share/nginx/html/cbt/vendor/compiled.php on line 6



  [Symfony\Component\Debug\Exception\FatalErrorException]
  Class 'Collective\Html\HtmlServiceProvider' not found



Script php artisan clear-compiled handling the pre-update-cmd event returned with an error



  [RuntimeException]
  Error Output: PHP Warning:  Module 'mcrypt' already loaded in Unknown on line 0
  PHP Fatal error:  Class 'Collective\Html\HtmlServiceProvider' not found in /usr/share/nginx/html/cbt/vendor/compiled.php on line



update [--prefer-source] [--prefer-dist] [--dry-run] [--dev] [--no-dev] [--lock] [--no-plugins] [--no-custom-installers] [--no-auties] [-v|vv|vvv|--verbose] [-o|--optimize-autoloader] [--ignore-platform-reqs] [--prefer-stable] [--prefer-lowest] [packages1] ...

次に、PHPアーティザンクリアコンパイルを実行して、それが何かをするかどうかを確認してみました。

PHP Warning:  Module 'mcrypt' already loaded in Unknown on line 0
PHP Fatal error:  Class 'Collective\Html\HtmlServiceProvider' not found in /usr/share/nginx/html/cbt/vendor/compiled.php on line 6716



  [Symfony\Component\Debug\Exception\FatalErrorException]
  Class 'Collective\Html\HtmlServiceProvider' not found

私のnginx ubuntu環境はwindows xampp envと同じではないことを知っていますが、これを追加するためにLaravelが提供する指示に従っても機能しないようです。これに関するいくつかのアドバイスをいただければ幸いです。

乾杯!

14
carbide20

composer=を更新すると、プロバイダーをチェックします。_laravelcollective/html_をインストールしていないため、まだ見つかりません。エラーがスローされます。

そのため、まずパッケージを必要とし、次にそれらを構成ファイルに追加します。

_composer require laravelcollective/html_を使用することもできます。これはjsonファイルに自動的に追加されます。設定ファイルがチェックされないため、それらを前に追加したかどうかは関係ありません。

48
cre8

Laravel 5.2。*で同じエラーが発生しました。次の指示に従ってください: https://laravelcollective.com/docs/5.2/html 、しかし動作しませんでした。

それを修正する他の方法は、CLIで次を実行します:

$ composer dump-autoload

次に実行します:

$ composer update

これは私のために動作します。 ;)

12
Gengjun Wu

Laravel 5.2を使用している場合は、これをcomposer.jsonに追加してみてください

"require": {
    "php": ">=5.5.9",
    "laravel/framework": "5.2.*",
    "laravelcollective/html": "^5.2",
    ... 
},
4
ecairol

インストールが失敗し、。/ composer.jsonを元のコンテンツに戻しました。

[エラー例外]
copy(/home/zahid/.composer/cache/files/laravelcollective/html/20e9e29d83e23aba16dc4b8d93d0757e1541f076.Zip):ストリームを開くことができませんでした:許可
ion denied

コマンド:composer require laravelcollective/html --prefer-source

それは動作します

0
Zahid Gani

最初にcomposer updateを試してください。すべての依存関係が更新されますが、動作しない場合は、プロジェクトのベンダーフォルダーを削除し、composer installと入力してcliで実行し、再び依存関係を追加します。

0
Ram Bhandari