Laravel 4自定义包未出现在autoload_namespace.php中
Laravel 4自定义包未出现在Laravel 4自定义包未出现在autoload_namespace.php中,php,laravel-4,package,composer-php,Php,Laravel 4,Package,Composer Php,Laravel 4自定义包未出现在autoload_namespace.php 我试图通过在我的一个laravel应用程序中创建一个workbench包来创建一个自定义包,将其提交给github,然后将其安装到另一个包中。我的问题是没有将名称空间映射添加到autoload_namespace.php,这会产生连锁反应,即 我的提供者数组中的Markfee\Responder\ResponderServiceProvider在我运行时导致以下错误: php artisan转储自动加载 错误输出:
autoload_namespace.php
我试图通过在我的一个laravel应用程序中创建一个workbench包来创建一个自定义包,将其提交给github,然后将其安装到另一个包中。我的问题是没有将名称空间映射添加到autoload_namespace.php
,这会产生连锁反应,即
我的提供者数组中的Markfee\Responder\ResponderServiceProvider
在我运行时导致以下错误:
php artisan转储自动加载
错误输出:
PHP致命错误:在第157行的/media/sf\wwwshare/feenance/vendor/laravel/framework/src/illumb/Foundation/ProviderRepository.PHP中找不到类“Markfee\Responder\ResponderServiceProvider”
该软件包可在以下网址找到:
我在composer.json文件中包含包含以下条目的包
"repositories": {
"responder": {
"type": "package",
"package": {
"name": "markfee/responder",
"description": "Simple responder class for responding with json from api",
"version": "0.1.0",
"source": {
"type": "git",
"url": "https://github.com/markfee/responder.git",
"reference": "a7a24c82479fc01ec0c06833690bfd2eeee9e47d"
}
}
}
},
"require": {
"laravel/framework": "4.2.*",
"markfee/responder": "0.1.*"
},
如果有人能给我点启示,我会非常感激的。请询问您是否需要任何进一步的详细信息。您通过提供该存储库的包定义完成了复杂的工作。如果您这样做,这个包将完全替代该存储库中的任何composer.json
,并且只有在没有composer.json的情况下才应该使用这个包
您没有将自动加载定义添加到该包中,因此自动加载中正确地缺少该定义
建议:避免在自己的composer.json
文件中使用type:package
。如果存储库已经有了composer.json
,只需使用type:vcs
如果希望像使用标记版本一样使用主分支,可以在require语句中添加别名:“markfee/responder”:“dev master as 0.1.0”
。您还可以克隆该repo并在您自己的本地副本中标记所需的提交,然后引用您自己的repo。或者尝试说服维护人员标记一个版本,并将其repo添加到packagist.org
在Sven的帮助下,我完成了这项工作,我所做的确切更改是将我的composer.json中的原始条目替换为以下内容。我没有使用别名,因为我现在只想包括主分支。版本控制和添加到PackageGist是我的下一个任务:
"repositories": {
"responder": {
"type": "vcs",
"url": "https://github.com/markfee/responder.git"
}
},
"require": {
"laravel/framework": "4.2.*",
"markfee/responder": "dev-master"
},