制作拉拉维尔包装。但"Class Not Found"



我正在制作laravel的包。但是阶级;Username/PackageName/Class";找不到。

我读过这个。但我找不到问题。

请帮帮我。

这是我的代码

composer.json

{
"name": "username/packageName",
"require": {
"php": "7.3",
"laravel/framework": "^6.0"
},
"autoload": {
"psr-4": {
"username\packageName\": "src/"
}
},
"license": "MIT",
"authors": [
],
"extra": {
"laravel": {
"providers": [
"username\packgeName\TestServiceProvider"
]
}
}
}

src/TestServiceProvider

<?php
namespace usernamepackageName;
use IlluminateSupportServiceProvider;
class TestServiceProvider extends ServiceProvider
{
/**
* Register services.
*
* @return void
*/
public function register()
{
$this->app->bind('test', function ($app) {
return new Test();
});
}
}

src/Test.php

<?php
namespace usernamepackageName;
class Test {
public static function test(){
return 'abc';
}
}

在控制器中

use usernamepackageNameTest;
/* ~~~~ */
dd(Test::test()); // error

添加当前composer.json.之后

"repositories": [
{
"type": "path",
"url": "vendor/username/packageName",
"symlink": true
}
]
> composer dump-autoload

感谢您阅读我的代码。


用户名->我的用户名

packageName->我的包裹名称

在测试类中设置extend Facades类。如果你想静态地获取文件的所有功能,

class Test extends Facades {
public static function getFacadeAccessor(){
return 'classNameWhereFunctionIsWritten' //say TestService has test() function
}
}

并在提供程序"classNameWhereFunctionIsWritten"中传递此classNameWhereFunctionIsWritten

相关内容

最新更新