以下是composer.json
{
"name": "uci/uci-wp-webauth",
"description": "Wordpress plugin for enabling WebAuth logging in for UCI users on a site-by-site basis.",
"type": "project",
"license": "GPL-3.0",
"minimimum-stability": "stable",
"autoload": {
"psr-4": {
"": "includes/"
}
},
"require": {
"uci/uci-lib": "dev-master#9097b4f"
},
"repositories": [
{
"type": "vcs",
"url": "git@github.com:username/uci-lib"
}
]
}
目录结构如下:
UCI
-WebAuth.php
WebAuth类的结构是这样的:
namespace UCI;
class WebAuth {}
实现WebAuth的类/代码:
namespace WebAuth;
use UCI\WebAuth;
class Handler
{
public function __construct()
{
$this->init();
$this->webauth = new WebAuth();
由于某些原因,PHP继续报告:
Fatal error: Uncaught Error: Class 'UCI\WebAuth' not found
在设立作曲家项目之前,我已经这么做了很多次,但是这个真的让我难过。
答案 0 :(得分:0)
你没有指定名称空间的PSR-4自动加载器,所以这基本上是错误的:
"autoload": {
"psr-4": {
"": "includes/"
}
},
您必须指定要映射到文件夹的命名空间,但我宁愿用简单psr-4
替换整个classmap
事物:
"autoload": {
"classmap:: ["includes/"]
},