【发布时间】:2015-09-08 21:31:49
【问题描述】:
您好,我正在尝试在 Laravel 5.1 中开发一个包。感谢这里的帮助,我已经建立了基础。
我目前的问题是如何在开发包的时候加载依赖包。
在包composer.json 中,我添加了依赖项,现在将它们安装在我的包开发文件夹中的供应商文件夹中。这不是框架根供应商文件夹。
这是我的包composer.json的require部分:
"require": {
"illuminate/support": "~5.1",
"php" : ">=5.3.0",
"google/apiclient": "dev-master"
},
因为它们不是主要自动加载过程的一部分,所以确保从开发文件夹中正确加载我的包的依赖项的最佳方法是什么?如何包含自动加载?我担心如果我将它们引用到它们当前的位置/命名空间,当以后作为包安装在另一个应用程序中时它会中断。
在我的代码中,我有以下内容:
$client = new \Google_Client($config);
给出错误:
Class 'Google_Client' not found
我可以通过将此依赖项添加到主 composer.json 来解决这个问题,但我认为这不是保持包开发独立性的正确方法(如果有意义的话)
当我在 L4.2 中开发时,有一个工作台负责加载,这在 L5.1 中当然不再具有
感谢任何帮助和最佳实践
【问题讨论】:
标签: php laravel composer-php