2016-05-04 26 views
2

Ich habe ein kleines Problem. Ich versuche ein Laravel-Paket zu erstellen, aber es wird nicht geladen. Jedes Mal, wenn ich versuche, das Hinzufügen es ist Anbieter im config/app.php, erhalte ich:Laravel benutzerdefinierte Paket laden Problem

Error class 'Something\HttpRequest\HttpRequestServiceProvider' not found 

Im Moment ist es nur die eine Datei hat, befindet sich in "Verkäufer/etwas/http-request/src/HttpRequestServiceProvider". Ich vermute, dass etwas mit dem Weg zu tun hat, aber ich bin mir nicht sicher.

Ich habe

versucht
composer dump-autoload 

aber nicht zugeordnet bekommt.

Edit:

ich es auch veröffentlicht haben packagist und über Komponisten installieren, um zu überprüfen, ob es funktioniert (na ja, es funktioniert nicht: D).

Der Service-Provider-Stub sieht wie folgt aus:

<?php 

namespace Something\HttpRequest; 

use Illuminate\Support\ServiceProvider; 

class HttpRequestServiceProvider extends ServiceProvider 
{ 
    /** 
    * Bootstrap the application services. 
    * 
    * @return void 
    */ 
    public function boot() 
    { 
     // 
    } 

    /** 
    * Register the application services. 
    * 
    * @return void 
    */ 
    public function register() 
    { 

    } 
} 

Also im Grunde ist es nur die Laravel ein generiert. Ich bezweifle, dass dies die Ursache des Problems ist, aber wer weiß.

Irgendwelche Ideen?

Antwort

1

Namespaces überall verdoppeln.

Vergessen Sie nicht, Ihre Klasse zu composer.jsom so hinzuzufügen Laravel konnte autoload es:

"autoload": { 
    "classmap": [ 
     "database", 
     "app/custom" 
    ], 
    "files": [ 
     "app/someFolder/customHelpers.php" 
    ] 

Run composer dumpauto danach tun. Wenn es nicht funktioniert, versuchen Sie (mit -o Flag) zu laufen, manchmal hilft es.

aktualisiert

Wenn Sie Ihr Paket, um es mit dem Komponisten packagist laden und inistalling, müssen Sie autoload Abschnitt zu Ihrem Paket des composer.json, zum Beispiel hinzuzufügen:

"autoload": { 
    "psr-4": { 
     "YourName\\YourPackage\\": "src/" 
    } 
} 
+0

Nun, ich habe veröffentlicht der Stummel zum packagist, also kann ich versuchen, es direkt mit Komponist zu installieren. Ich glaube, ich sollte nichts anderes tun, als es in der App-Konfiguration der Requir-Liste und den Service-Providern hinzuzufügen. Würde es etwas damit zu tun haben, dass der Service Provider nur Boot- und Register-Methoden hat und diese leer sind? – overburn

+1

Eigentlich müssen Sie 'autoload' Abschnitt dafür hinzufügen. Überprüfen Sie die aktualisierte Antwort. –

+1

Dank einer Million, funktioniert wie ein Charme. Je mehr du weißt, heh. – overburn