I created my own packages in Laravel/packages/Myname/User
my /User/composer.json contain the following :
"autoload": {
"psr-4": {
"Myname\\User\\": "src/"
}
},
"extra": {
"laravel": {
"providers": [
"Myname\\User\\Providers\\UserServiceProvider"
]
}
},
here is the main laravel composer.json autoload:
"autoload": {
"psr-4": {
"App\\": "app/",
"Database\\Factories\\": "database/factories/",
"Database\\Seeders\\": "database/seeders/",
"Myname\\User\\": "packages/Myname/User/src/"
}
},
Here is my UserServiceProvider.php
class UserServiceProvider extends ServiceProvider
{
public function register()
{
$this->app->bind(UserInterface::class, UserRepository::class);
}
public function boot()
{
$this->loadMigrationsFrom(__DIR__.'/../../database/migrations');
}
}
Why my service provider is not working, since i have the extra in User/composer.json
I run also :
composer dump-autoload
it works only when I do manually in AppServiceProvider.php the following:
public $bindings = [
UserInterface::class => UserRepository::class,
];