Php 未找到laravel包的类
我用这个Php 未找到laravel包的类,php,laravel,composer-php,autoload,Php,Laravel,Composer Php,Autoload,我用这个composer.json制作了一个laravel包: { "name": "calcanotica/file-storage", "type": "library", "description": "A file storage module for laravel.", "homepage": "<<gitlab url>>", "authors": [ { <<aut
composer.json
制作了一个laravel包:
{
"name": "calcanotica/file-storage",
"type": "library",
"description": "A file storage module for laravel.",
"homepage": "<<gitlab url>>",
"authors": [
{
<<authors>>
}
],
"autoload": {
"psr-4": { "Calcanotica": "src" }
},
"require": {
"php": "^5.5.9 || ^7.0",
"illuminate/contracts": "5.1.* || 5.2.* || 5.3.* || 5.4.*",
"illuminate/support": "5.1.* || 5.2.* || 5.3.* || 5.4.*",
"league/flysystem-aws-s3-v3": "~1.0",
"nesbot/carbon": "^1.0"
}
}
在S3FileStorage.php
文件中,我有以下类:
namespace Calcanotica\Storage;
class S3FileStorage { ... }
但是,当我尝试将另一个应用程序中的类用作\calcannotica\Storage\S3FileStorage
时,会出现class\calcannotica\Storage\S3FileStorage not found
错误
我已经执行了composer dump autoload
有什么问题吗?在
composer.json
文件中添加以下行:
"autoload": {
"psr-4": {
"Calcanotica\\": "src/"
},
},
您需要在命名空间之后添加
\\
,在src
之后添加/
。有关更多信息,请查看此处:在您的composer.json
文件中添加以下行:
"autoload": {
"psr-4": {
"Calcanotica\\": "src/"
},
},
您需要在命名空间之后添加
\\
,在src
之后添加/
。有关更多信息,请检查此处:您的自动加载部分不正确。命名空间必须以\\
()结尾,因此它应该是:
"autoload": {
"psr-4": { "Calcanotica\\": "src" }
},
但是我会替换整个
"autoload": {
"psr-4": { "Calcanotica": "src" }
},
与
让composer找出where()是什么,通常使用它比手动设置名称空间映射更好,更不容易出错,并且如果您将新名称空间添加到包中,以后也不需要注意。您的自动加载部分不正确。命名空间必须以\\
()结尾,因此它应该是:
"autoload": {
"psr-4": { "Calcanotica\\": "src" }
},
但是我会替换整个
"autoload": {
"psr-4": { "Calcanotica": "src" }
},
与
让composer找出where()是什么,一般来说,它比手工设置名称空间映射更好,更不容易出错,而且如果您向包中添加新名称空间,以后也不需要任何注意。旁注:大多数require
条目毫无意义。请阅读Thank@MarcinOrlowski,我会检查一下。旁注:您的大部分require
条目毫无意义。请阅读“谢谢@MarcinOrlowski”,我会检查它。这很有效!谢谢你能简单解释一下为什么它不起作用,现在却起作用了吗?或者指向一个参考…完美@MarcinOrlowski。比你强!成功了!谢谢你能简单解释一下为什么它不起作用,现在却起作用了吗?或者指向一个参考…完美@MarcinOrlowski。比你强!