2014-06-18 37 views
1

你好,我已經創建了一個新的包,用於我正在開發的Laravel項目,我是新來的包和laravel本身的概念,但這裏是我想出的代碼,Laravel無法找到一個包的類

/workbench/cycs/proofhq/src/Cycs/Proofhq/ProofhqServiceProvider.php

public function boot() 
{ 
    $this->package('cycs/proofhq'); 
} 

/** 
* Register the service provider. 
* 
* @return void 
*/ 
public function register() 
{ 
    $this->app->booting(function() 
    { 
     $loader = \Illuminate\Foundation\AliasLoader::getInstance(); 
     $loader->alias('Cycs', 'Cycs\Proofhq\Facades\Supyo'); 
    }); 

    $this->app['proofhq'] = $this->app->share(function($app) 
    { 
     return new Proofhq; 
    }); 
} 

/workbench/cycs/proofhq/src/Cycs/Proofhq/Proofhq.php

<?php namespace Cycs\Proofhq; 

class Proofhq { 

    public static function greeting() { 
     return "What's up dawg!"; 
    } 
} 

/工作臺/ CYCS/proofhq/src目錄/ CYCS /臨ofhq /牆面/ Proofhq.php

<?php namespace Cycs\Proofhq\Facades; 

use Illuminate\Support\Facades\Facade; 

class Proofhq extends Facade { 

    /** 
    * Get the registered name of the component. 
    * 
    * @return string 
    */ 

    protected static function getFacadeAccessor() { 
     return 'proofhq'; 
    } 

} 

我已經添加了包的應用程序/配置/ app.php和提供商陣列,然後嘗試通過簡單的GET訪問程序包的功能,

Route::get('/test', function(){ 
    echo proofhq::greeting(); 
}); 

但我得到以下錯誤,

類 'proofhq' 未找到

我無法弄清楚爲什麼,我已經按照這個例子來寫這封信,而且這個班還存在。

任何人都可以擺脫這對我來說這是什麼?

+0

您是否嘗試過使用echo Proofhq :: greeting()而不是全部小寫? – Unnawut

+0

這是一個組合,需要'composer dump-autoload' – Cycs

+1

請回答你的問題你的自己如此以待,可以看到答案。 – Reflic

回答

1

composer dump-autoload並將路由器中的類名第一個字母更改爲大寫似乎有訣竅!