我有自己的小mvc框架,我使用作曲家psr-4自动加载。
在我自己的电脑上运行得非常好,但是当我把它部署到我的ubuntu服务器上时,它已经不工作了。(再也找不到课程了)我试过很多东西,但不管我试什么都不行……
我试过的:
作曲家转储自动加载
作曲家更新
删除所有内容并再次上载
在网上搜索几个小时…:(
这是我的composer.json:
{
"autoload": {
"psr-4": {
"App\\": "app",
"Core\\": "core",
"Magister\\": "vendor/Magister"
}
},
"require": {
"philo/laravel-blade": "^3.1"
}
}
我只是不明白为什么它不在我的服务器上工作…
我在服务器上使用的是另一个版本的php:7.1,在我的计算机上使用的是5.6,但这不会有什么区别,对吧?
我该如何解决这个问题?我只是不明白为什么会这样…:(
编辑:
我的代码:
Index.php:
<?php
require "core/app.php";
$app = new \Core\App();
echo $app->start();
APP.PHP:
<?php
namespace Core;
require "./vendor/autoload.php";
class App
{
function start()
{
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL ^ E_DEPRECATED);
$MC = new Routing();
// This is where it fails. Get the error: "class Core\Routing not found"
Routing.php:
<?php
namespace Core;
Use App\routes;
class Routing
{
private $parameters = [];
public function GetMC($Getroute){
}
}
服务器上的文件结构:
我已将供应商地图从树中排除
最佳答案
可以。。。我已经修好了。
我不知道为什么和如何工作,但它的工作…D
我已将composer.json改为:
{
"autoload": {
"psr-4": {
"App\\": "app/",
"Core\\": "core/",
"Magister\\": "vendor/Magister/"
},
"classmap": [
"app/",
"core/",
"vendor/Magister/"
]
},
"require": {
"philo/laravel-blade": "^3.1"
}
}
关于php - 部署后Composer PSR-4自动加载无法正常工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48256377/