Я пытаюсь разработать пакет в laravel 4 - свою первую попытку в пакете. Я нашел пару обучающих программ, которые я попытался выполнить:
http://jasonlewis.me/article/laravel-4-develop-packages-using-the-workbench
и
http://culttt.com/2013/06/24/creating-a-laravel-4-package/
и, конечно, в официальной документации.
Я следил за базовой структурой для создания фреймворка. Однако при загрузке приложения я получаю ошибку класса, не найденную. Это напрямую относится к serviceprovider, который я разместил в файле 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();
}
}
Я дважды проверял орфографию и запускал компоновщик dump-autoload как из корня проекта, так и из корня пакета.
У меня закончились идеи для решения класса, которые не нашли никаких идей, в которых я ошибся?
Линия, создающая ошибку, такова:
C:\wamp\www\googleapi\laravel\vendor\laravel\framework\src\Illuminate\Foundation\ProviderRepository.php
Любая помощь оценена
Спасибо
Обновление: Я запустил обновление для композитора, как это было предложено в папке workbench/package, и ничего не обновил. Затем я запустил композитор в корне проекта и возникла ошибка:
[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?