Php 如何在RouteServiceProvider-Laravel 5.3中定义路由文件的变更单

Php 如何在RouteServiceProvider-Laravel 5.3中定义路由文件的变更单,php,laravel,routing,laravel-5.3,Php,Laravel,Routing,Laravel 5.3,如上所述,我在我的app/Providers/RouteServiceProvider中定义了两个路由文件 public function map() { $this->mapWebRoutes(); $this->mapProjectRoutes(); $this->mapApiRoutes(); // } 下面是我的定义 protected function mapProjectRoutes() { Route::group([

如上所述,我在我的
app/Providers/RouteServiceProvider
中定义了两个路由文件

public function map()
{
    $this->mapWebRoutes();
    $this->mapProjectRoutes();

    $this->mapApiRoutes();

    //
}
下面是我的定义

protected function mapProjectRoutes()
{
    Route::group([
        'middleware' => 'web',
        'namespace' => $this->namespace,
    ], function ($router) {
        require base_path('project/routes/project.php');
    });
}
问题: 我希望先解析
project.php
中的路由,然后解析
web.php
。 我已经检查了上述定义的所有四个可能位置,例如。将
mapProjectRoutes
置于
mapWebRoutes
上方和下方。 无论函数的顺序是什么,
web.php
中的路由优先。 使
project.php
中的路由工作的唯一方法是注释掉
$this->mapWebRoutes()

我的问题 如何控制路由文件的顺序。 为了防止出现简单的错误,每次更改顺序后,我都会执行
php artisan cache:clear
-但没有任何帮助


Thx

看起来问题可能与您的项目路由也使用web中间件这一事实有关。除了组织之外,您是否有任何理由将项目路线分开?很难定义答案。一个包含路由的文件由一个外部包发布,即我自己的启动包。目前,我更改了项目特定路线的名称以避免冲突。感谢您的关注。我也尝试了您提供的代码,但它不起作用,我建议您使用像
咖啡因/modules
这样的模块,并注释掉主要路线,这可能会有所帮助。