Silex autoload psr-4 class 不存在
Silex autoload psr-4 class does not exist
我有这个错误:
InvalidArgumentException in ControllerResolver.php line 147:
Class "MyProject\API\FrontController" does not exist.
这是我的项目结构:
- composer.json
- api
- 来源
- FrontController.php
- 捆绑文件夹
- 应用程序
- 网络
- 供应商
- 客户
我的composer.json
"psr-4": {
"MyProject\API\": "myproject/api/src",
"MyProject\Client\": "myproject/client/src"
}
我的 routing.php :
// myproject/api/app/config/routing.php
$routes->get('/', 'MyProject\API\FrontController::exec')
FrontController.php :
<?php
// myproject/api/src/FrontController
namespace MyProject\API;
class FrontController {
您在 psr-4 地图中放置了一个额外的文件夹。第一个 myproject 目录不应该在你的路径中,因为这个路径是相对于 composer.json 文件的,而你的 src 代码在 api/src 和 clients/src 中(第二个只是猜测,你没有post clients 目录的内容)。
让我告诉你,恕我直言,你的目录布局很奇怪。我会有一个 src
目录,里面放一个 api 和一个客户端子目录。
PS:您列出的客户端目录是单数形式,但在 composer 中是复数形式,注意细节!
还有 运行 composer dump-autolad
更改 psr-4 参数后。
我有这个错误:
InvalidArgumentException in ControllerResolver.php line 147: Class "MyProject\API\FrontController" does not exist.
这是我的项目结构:
- composer.json
- api
- 来源
- FrontController.php
- 捆绑文件夹
- 应用程序
- 网络
- 来源
- 供应商
- 客户
我的composer.json
"psr-4": {
"MyProject\API\": "myproject/api/src",
"MyProject\Client\": "myproject/client/src"
}
我的 routing.php :
// myproject/api/app/config/routing.php
$routes->get('/', 'MyProject\API\FrontController::exec')
FrontController.php :
<?php
// myproject/api/src/FrontController
namespace MyProject\API;
class FrontController {
您在 psr-4 地图中放置了一个额外的文件夹。第一个 myproject 目录不应该在你的路径中,因为这个路径是相对于 composer.json 文件的,而你的 src 代码在 api/src 和 clients/src 中(第二个只是猜测,你没有post clients 目录的内容)。
让我告诉你,恕我直言,你的目录布局很奇怪。我会有一个 src
目录,里面放一个 api 和一个客户端子目录。
PS:您列出的客户端目录是单数形式,但在 composer 中是复数形式,注意细节!
还有 运行 composer dump-autolad
更改 psr-4 参数后。