您现在的位置是:首页 >技术教程 >laravel框架的composer手动安装扩展包--案例是laravel-gii安装记录网站首页技术教程

laravel框架的composer手动安装扩展包--案例是laravel-gii安装记录

会烘焙的工程师 2023-06-09 00:00:02
简介laravel框架的composer手动安装扩展包--案例是laravel-gii安装记录

当composer无法安装特点的扩展包,这时可以使用手动进行安装
正常安装是这样的

在项目的根目录下执行如下命令,使用 composer 安装扩展包:

composer require skyyouare/laravel-gii

操作步骤
手动下载的 Laravel 扩展包,可以通过以下步骤安装到 composer:

1.将扩展包的源代码放到项目的某个目录下,例如 vendor/skyyouare/laravel-gii。

2.在项目根目录下的 composer.json 文件中,添加 “autoload” 配置项,并将扩展包的命名空间及对应的目录路径加入到该配置中。例如:

"autoload": {
    "psr-4": {
        "Skyyouare\Gii\": "vendor/skyyouare/laravel-gii/src"
    }
}

3.在 config/app.php 文件中添加 GiiServiceProvider 到服务提供者数组中,通常在 providers 数组的末尾添加:

'providers' => [
    // ...
    SkyyouareGiiGiiServiceProvider::class,
],

执行 composer dump-autoload 命令,重新生成自动加载文件。

根据错误提示 Script @php artisan package:discover --ansi handling the post-autoload-dump event returned with error code -1073741819,这可能是由于某些原因导致 Laravel 的自动发现机制 package:discover 执行失败。

可以尝试以下方法解决问题:

清除 Laravel 缓存,然后再次执行 composer dump-autoload 命令:

php artisan cache:clear
composer dump-autoload

重建 Laravel 服务容器缓存,然后再次执行 composer dump-autoload 命令:

php artisan view:clear
php artisan route:clear
php artisan config:clear
php artisan clear-compiled
php artisan optimize --force
composer dump-autoload

这个命令会清除缓存,并重新生成优化的自动加载文件。

如果以上方法无法解决问题,可以尝试手动删除 bootstrap/cache 目录下的所有文件,然后再执行 composer dump-autoload 命令。

如果还有问题,请提供更多详细信息和错误提示,以便进行进一步的排查和解决。

发布文件

该操作会发布assets静态文件,到public目录下
php artisan vendor:publish

选择

[x] Provider: SunshinevGiiProvidersGiiServiceProvider

添加路由

Route::any('/gii/model','SunshinevGiiControllersModelController@index');
Route::any('/gii/crud','SunshinevGiiControllersCrudController@index');

然后访问吧

http:[domain]/gii/model
风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。