LoginSignup
4
0

More than 3 years have passed since last update.

composer require laravel/uiが失敗した場合の対処方法 PHP 7.4.8 Laravel4.2.5 Windows10

Posted at

目的

Laravel7 のアプリケーションにユーザ認証機能を実装するために、
$ composer require laravel/uiを実行したところエラーとなった。
解決策の備忘録として記載する。

環境

PHP 7.4.8
Laravel4.2.5
Windows 10 Pro

ターミナル(コマンドプロンプト)で実行したコード(1パターン目)

コマンドプロンプト
composer require laravel/ui

エラー文(1パターン目)

コマンドプロンプト
PS C:\Program Files\Apache Software Foundation\Apache24\htdocs\laravel\helloworld> composer require laravel/ui     
Using version ^3.3 for laravel/ui
./composer.json has been updated
Running composer update laravel/ui
Updating dependencies
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - laravel/ui[v3.3.0, ..., 3.x-dev] require illuminate/console ^8.42 -> found illuminate/console[v8.42.0, ..., 8.x-dev] but these were not loaded, likely because 
it conflicts with another require.
    - Root composer.json requires laravel/ui ^3.3 -> satisfiable by laravel/ui[v3.3.0, 3.x-dev].


Installation failed, reverting ./composer.json and ./composer.lock to their original content.

ターミナル(コマンドプロンプト)で実行したコード(2パターン目)

コマンドプロンプト
composer require laravel/ui:^2.4

エラー文(2パターン目)

コマンドプロンプト
PS C:\Program Files\Apache Software Foundation\Apache24\htdocs\laravel\helloworld> composer require laravel/ui:^2.4 
./composer.json has been updated
Running composer update laravel/ui
Updating dependencies
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - laravel/ui v2.4.0 requires illuminate/console ^7.0 -> found illuminate/console[v7.0.0, ..., 7.x-dev] but these were not loaded, likely because it conflicts with another require.


Installation failed, reverting ./composer.json and ./composer.lock to their original content.

解決方法

色々なサイトを見てみると、バージョンを変えたら正常にインストールできたという意見が多かった。
以下パッケージリストのサイトを参考に1つずつバージョンを変えて試してみた。
https://packagist.org/packages/laravel/ui

以下キャプチャの赤枠がリリースされているバージョンとなっている。
1623950171823.png

私の環境では V3.1.0 で正常にインストールできたので、以下コードで実行した。

コマンドプロンプト
composer require laravel/ui:^3.1

成功すると以下のような文章が出てきた。

コマンドプロンプト
PS C:\Program Files\Apache Software Foundation\Apache24\htdocs\laravel\helloworld> composer require laravel/ui:^3.1
./composer.json has been updated
Running composer update laravel/ui
Loading composer repositories with package information
Updating dependencies
Lock file operations: 1 install, 0 updates, 0 removals
  - Locking laravel/ui (v3.1.0)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 1 install, 0 updates, 0 removals
  - Downloading laravel/ui (v3.1.0)
  - Installing laravel/ui (v3.1.0): Extracting archive
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi
Discovered Package: fideloper/proxy
Discovered Package: fruitcake/laravel-cors
Discovered Package: laravel/sail
Discovered Package: laravel/tinker
Discovered Package: laravel/ui
Discovered Package: nesbot/carbon
Discovered Package: nunomaduro/collision
Package manifest generated successfully.
74 packages you are using are looking for funding.
Use the `composer fund` command to find out more!

LOGIN機能の設定追加と、DBにテーブルを作成

php artisan ui vue --auth

php artisan migrate

FrontEndに必要なPackageをインストール
(Node/npmの使用が必要)

コマンドプロンプト
npm install

CSS/JSを作成ビルド

コマンドプロンプト
npm run dev

以下のように トップページにログインのリンクが出ました。
laravel_index.png

ログイン画面
login.png

登録画面
register.png

まとめ

以上でログイン機能を実装することができました。

Laravelのバージョンによって対応が変わるようなので、別のバージョンの方や
この記事で解決できなかった方は以下参考にしてください。

Laravel6/7での実装方法
https://qiita.com/daisu_yamazaki/items/a914a16ca1640334d7a5

Laravel8での実装方法
https://qiita.com/daisu_yamazaki/items/b946594896179abcd203

MAC
https://qiita.com/miriwo/items/767b5f69ffaba85ebf6e

同じ事象を説明した記事
https://qiita.com/PWuttam/items/a29f2af2da796b2969cd

4
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
0