Php Laravel软件包未自动加载-Laravel 5.2

Php Laravel软件包未自动加载-Laravel 5.2,php,laravel,laravel-5.2,Php,Laravel,Laravel 5.2,我正在构建一个laravel包,但它不会自动加载 这是我的软件包的自动加载部分: "autoload": { "classmap": [ "src" ], "psr-4": { "Doitonlinemedia\\Translatableroutes\\": "src/" } } 类的名称空间类似于Doitonlinemedia\translateableroutes 文件夹结构类似于: - vendor - - doitonli

我正在构建一个laravel包,但它不会自动加载

这是我的软件包的自动加载部分:

"autoload": {
    "classmap": [
        "src"
    ],
    "psr-4": {
        "Doitonlinemedia\\Translatableroutes\\": "src/"
    }
}
类的名称空间类似于
Doitonlinemedia\translateableroutes

文件夹结构类似于:

- vendor
- - doitonlinemedia
- - - translatableroutes
- - - - composer.json
- - - - src
- - - - - class1.php
我在app.php中添加了ServiceProvider,如下所示:
Doitonlinemedia\translateableroutes\translateableroutesseserviceprovider::class

但它一直说未找到类“Doitonlinemedia\translateableroutes\translateableroutesserviceprovider”

每次更改时运行
composer dump autoload

我做错了什么

编辑

对于开发,我在主composer.json文件中添加了:
“Doitonlinemedia\\translateableroutes\\”:“packages/Doitonlinemedia/translateableroutes/src”
。但是当我在一个新项目中需要这个作曲家软件包时,我遇到了上述问题


要试用此软件包,请执行以下说明

PHP名称空间区分大小写。 您必须将其放入composer.json中

"psr-4": {
    "Doitonlinemedia\\Translatableroutes\\": "src/"
}
而不是这个

"psr-4": {
    "doitonlinemedia\\translatableroutes\\": "src/"
}
对我来说,它也可以在没有
classmap
选项的情况下工作

再次运行
composer dump autoload
,然后重试

编辑

这对我有用

{
    "name": "doitonlinemedia/translatableroutes",
    "description": "Create translatable resource routes",
    "authors": [
        {
            "name": "Tim van Uum",
            "email": "tim@doitonlinemedia.nl"
        }
    ],
    "minimum-stability": "stable",
    "license": "MIT",
    "require": {
        "php": ">=5.3.0"
    },
    "autoload": {
        "classmap": [
            "src"
        ],
        "psr-4": {
            "Doitonlinemedia\\Translatableroutes\\": "src/"
        }
    }
}
此外,您应该将此软件包添加到您的需求
“照明/支持”:“~5.2”

注意:如果供应商软件包中的
composer.json
文件未更新,composer似乎不会刷新这些文件的自动加载条目

编辑后,您必须将其推送到存储库中。在项目中重新安装包

如果您仍在积极开发软件包,我建议您按照以下说明设置环境:


在不重新安装或更新远程存储库的情况下,开发软件包要容易得多。

PHP名称空间区分大小写。 您必须将其放入composer.json中

"psr-4": {
    "Doitonlinemedia\\Translatableroutes\\": "src/"
}
而不是这个

"psr-4": {
    "doitonlinemedia\\translatableroutes\\": "src/"
}
对我来说,它也可以在没有
classmap
选项的情况下工作

再次运行
composer dump autoload
,然后重试

编辑

这对我有用

{
    "name": "doitonlinemedia/translatableroutes",
    "description": "Create translatable resource routes",
    "authors": [
        {
            "name": "Tim van Uum",
            "email": "tim@doitonlinemedia.nl"
        }
    ],
    "minimum-stability": "stable",
    "license": "MIT",
    "require": {
        "php": ">=5.3.0"
    },
    "autoload": {
        "classmap": [
            "src"
        ],
        "psr-4": {
            "Doitonlinemedia\\Translatableroutes\\": "src/"
        }
    }
}
此外,您应该将此软件包添加到您的需求
“照明/支持”:“~5.2”

注意:如果供应商软件包中的
composer.json
文件未更新,composer似乎不会刷新这些文件的自动加载条目

编辑后,您必须将其推送到存储库中。在项目中重新安装包

如果您仍在积极开发软件包,我建议您按照以下说明设置环境:


无需始终重新安装或更新远程存储库就可以轻松地开发软件包。

多亏了laracast论坛的帮助。我发现我的项目有点腐败,我猜,因为包已经在工作


感谢laracast论坛的帮助。我发现我的项目有点腐败,我猜,因为包已经在工作


我刚刚注意到了这一点。显然它已经起作用了。请看我的答案。我会将这个包添加到需求中(顺便说一句,这是什么意思?),我会记住你的。显然它已经起作用了。请看我的答案。我将把这个包添加到需求中(顺便说一句,它是什么?),我会记住你的。