terion/package-installer

此软件包已被弃用且不再维护。未建议替代软件包。

Laravel 4 的自动软件包安装器

v1.0.1 2014-08-04 16:42 UTC

This package is not auto-updated.

Last update: 2022-02-01 12:37:07 UTC


README

version license downloads

此软件包提供了一个命令行界面,用于快速方便地安装软件包(任何软件包,不仅仅是Laravel特定的)。

示例

php artisan package:install barryvdh/laravel-dompdf

为什么?

如何安装软件包?

您去github或packagist或google,搜索所需软件包,查看其完整名称和可用版本,然后通过composer的命令行或手动修改 composer.json 来要求它,然后您在readme中查找该软件包提供的哪些服务提供商和外观,并手动复制粘贴到配置中,然后手动发布配置和资源... 这很烦人! 机器必须做这件事。

这就是解决方案。

安装

  1. 要求软件包
composer require terion/package-installer:~1
  1. 添加到 app/config/app.php 中的 providers 数组
'Terion\PackageInstaller\PackageInstallerServiceProvider',

如何使用

1. 搜索软件包或安装已知的软件包

php artisan package:install theme

在composer中搜索软件包。这将输出找到的软件包列表,并按数字选择。 默认选择列表中的第一个软件包。

php artisan package:install yaap/theme

这将安装 yaap/theme 软件包。如果没有这样的软件包,它将回退到搜索。

2. 选择版本

选择软件包后,您将提示通过数字选择列表中的可用版本。

Available versions:
[1] dev-master (2014-06-22 17:54:03)
[2] 1.2.6 (2014-06-22 17:54:03)
[3] 1.2.5 (2014-06-22 17:22:37)
[4] 1.2.4 (2014-05-26 11:16:15)
[5] 1.2.3 (2014-05-25 06:44:39)
[6] 1.2.2 (2014-05-24 22:39:29)
[7] 1.2.1 (2014-05-24 22:36:43)
[8] 1.2.0 (2014-05-24 22:32:40)
[9] 1.1.1 (2014-05-24 18:07:59)
[10] 1.1.0 (2014-05-24 14:28:29)
[11] 1.0.0 (2014-04-27 17:28:38)
Select version by number [2]:

默认选择如果有可用,则是最新稳定版本。 如果没有稳定版本,则选择 dev-master

3. 利益!

安装程序现在将更新 composer.json,安装软件包,搜索服务提供商和外观,修改 app/config/app.php,并发布软件包配置和资源。它还尊重 Ryan的 package installer provides.json,但仍将在没有它的前提下完成工作。

Your choice: 1.2.6
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
  - Installing yaap/theme (1.2.6)
    Loading from cache

Writing lock file
Generating autoload files
Generating optimized class loader
Package yaap/theme installed
Processing package...
Found 1 service providers:
[1] YAAP\Theme\ThemeServiceProvider
Found 1 aliases:
[1] YAAP\Theme\Facades\Theme [Theme]

您可能会遇到哪些问题

我发现的唯一问题是,一些软件包包含不应包含在应用配置中的外观,但它们确实包含了,这可能会破坏应用程序,并且应该手动修复(但这很容易)。

例如 - orchestra/support 包含大约20个外观,它们与Laravel的外观冲突。软件包安装程序通过注释冲突别名来安全地处理这种情况,在这种情况下,您应该手动删除多余的别名并取消注释旧的别名。

待办事项

  • 完全自动(静默)模式
  • 将参数传递给composer命令行
  • 处理特定环境的软件包
  • 单元测试