Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Laravel在包装中使用包装_Php_Laravel 5_Package_Composer Php - Fatal编程技术网

Php Laravel在包装中使用包装

Php Laravel在包装中使用包装,php,laravel-5,package,composer-php,Php,Laravel 5,Package,Composer Php,我正在Laravel 5.5中开发一个软件包,我需要这个软件包: "extra": { "laravel": { "providers": [ "Laracasts\\Utilities\\JavaScript\\JavaScriptServiceProvider" ], "aliases": { "JavaScript": "Laracasts

我正在Laravel 5.5中开发一个软件包,我需要这个软件包:

"extra": {
        "laravel": {
            "providers": [
                "Laracasts\\Utilities\\JavaScript\\JavaScriptServiceProvider"
            ],
            "aliases": {
                "JavaScript": "Laracasts\\Utilities\\JavaScript\\JavaScriptFacade"
            }
        }
    }

问题是它由于某种原因没有注册。当我在
JavaScriptServiceProvider.php
中添加时,什么都没有发生。当我使用
Javascript
facade时,我得到一个错误,它不存在

我的软件包composer.json文件:

"require": {
        "php" : "^7.0",
        "illuminate/support": "~5.5.0",
        "laracasts/utilities": "^3.0"
    },
我使用Laravel 5.5,因此默认情况下应该注册它(来自laracasts包的composer.json):


我做错了什么?

在我自己的包中使用不同的其他包时,我遇到了同样的问题

以下是对我有效的步骤:

  • 将所需的包作为依赖项添加到您自己的包中:

    composer require laracasts/utilities 编写器需要Laracast/实用程序
  • 在Laravel项目中更新软件包(例如,通过增加版本号或删除软件包并重新安装)

    composer update # in main Laravel project Laravel主项目中的作曲家更新
  • 然后您应该看到,在主Laravel项目中,自动发现了您自己的包,并且依赖于Laracast/utilities

  • 让我知道这是否对您有帮助,或者我是否可以提供更多帮助。

    您需要执行以下步骤来解决此问题:

  • 在程序包目录中运行命令:

    composer需要Laracast/utilities

  • 现在,只要您想使用此依赖项,就在包中(文件顶部)使用它:

    使用laracast\Utilities\JavaScript\yourClassName