我正在尝试在 laravel 4 中开发一个包——我第一次尝试一个包。我发现了一些我尝试过的教程:
http://jasonlewis.me/article/laravel-4-develop-packages-using-the-workbench
和
http://culttt.com/2013/06/24/creating-a-laravel-4-package/
当然在官方文档中。
我已经按照基本结构来创建框架。然而,在加载应用程序时,我得到一个找不到类的错误。这与我放置在 app.php 文件中的服务提供者直接相关。
这是我在提供者数组中的条目:
'Longestdrive\Calendar\CalendarServiceProvider'
我的文件夹结构是:
laravel/workbench/longestdrive/calendar/src/Longestdrive/Calendar
我的服务提供商有以下条目:
<?php namespace Longestdrive\Calendar;
use Illuminate\Support\ServiceProvider;
class CalendarServiceProvider extends ServiceProvider {
/**
* Indicates if loading of the provider is deferred.
*
* @var bool
*/
protected $defer = false;
/**
* Bootstrap the application events.
*
* @return void
*/
public function boot()
{
$this->package('longestdrive/calendar');
}
/**
* Register the service provider.
*
* @return void
*/
public function register()
{
//
}
/**
* Get the services provided by the provider.
*
* @return array
*/
public function provides()
{
return array();
}
}
我已经仔细检查了拼写,并从项目的根目录和包的根目录运行了 composer dump-autoload。
我已经没有解决课程的想法没有找到我出错的任何想法?
产生错误的行是这一行:
C:\wamp\www\googleapi\laravel\vendor\laravel\framework\src\Illuminate\Foundation\ProviderRepository.php
任何帮助表示赞赏
谢谢
更新:我按照工作台/包文件夹中的建议运行了作曲家更新,但响应没有更新。然后我在项目的根目录下运行 composer 并产生了一个错误:
[RuntimeException]
Error Output: PHP Fatal error: Class 'Longestdrive\Calendar\CalendarServiceProvider' not found
in C:\wamp\www\googleapi\laravel\vendor\laravel\framework\src\Illuminate\Foundation\ProviderRe
pository.php on line 123
我之前可能发布了错误的错误行。完整的异常响应是:
Class 'Longestdrive\Calendar\CalendarServiceProvider' not found
错误摘录:
* @param \Illuminate\Foundation\Application $app
* @param string $provider
* @return \Illuminate\Support\ServiceProvider
*/
public function createProvider(Application $app, $provider)
{
return new $provider($app);
}
我认为这与服务提供程序加载程序没有找到 CalendarServiceProvider 有关?