【发布时间】:2022-08-15 06:31:34
【问题描述】:
对于我当前的作曲家项目,我需要使用这些依赖项:
\"lokielse/omnipay-alipay\" : \"dev-master\",
\"lokielse/omnipay-wechatpay\" : \"dev-master\"
但是当我运行命令时:
composer update --with-all-dependencies
我收到此错误消息:
Could not scan for classes inside \"vendor/alipay\" which does not appear to be a file nor a folder
知道我该如何解决吗?谢谢。
更新1:这是有关该问题的一些附加信息。
- 我在vendor文件夹里面检查了,非支付宝文件夹被创建了。
- 这是原来的composer.json文件内容:
{ \"name\" : \"muvizuworld\", \"description\" : \"The Laravel Framework.\", \"require\" : { \"php\" : \"^7.3|^8.0\", \"ext-curl\" : \"*\", \"ext-json\" : \"*\", \"alibabacloud/sdk\" : \"^1.8\", \"darkaonline/l5-swagger\" : \"^8.0\", \"dcat/laravel-admin\" : \"2.*\", \"fideloper/proxy\" : \"^4.4\", \"fruitcake/laravel-cors\" : \"^2.0\", \"genealabs/laravel-model-caching\" : \"^0.11.1\", \"guzzlehttp/guzzle\" : \"^7.0.1\", \"hhxsv5/laravel-s\" : \"^3.7\", \"iidestiny/laravel-filesystem-oss\" : \"^2.1\", \"laravel/framework\" : \"^8.12\", \"laravel/horizon\" : \"^5.7\", \"laravel/tinker\" : \"^2.5\", \"lcobucci/jwt\" : \"3.3.3\", \"overtrue/laravel-wechat\" : \"^6.0\", \"predis/predis\" : \"^1.1\", \"simplesoftwareio/simple-qrcode\" : \"^4.1\", \"tymon/jwt-auth\" : \"^1.0\", \"xuxiaoyang/laravel-model-trait\" : \"^1.0\", \"ignited/laravel-omnipay\" : \"2.*\", \"lokielse/omnipay-alipay\" : \"dev-master\", \"lokielse/omnipay-wechatpay\" : \"dev-master\", \"ext-zip\" : \"*\" }, \"require-dev\" : { \"barryvdh/laravel-ide-helper\" : \"^2.8\", \"beyondcode/laravel-dump-server\" : \"^1.7\", \"beyondcode/laravel-query-detector\" : \"^1.4\", \"codedungeon/phpunit-result-printer\" : \"^0.30.0\", \"facade/ignition\" : \"^2.5\", \"fakerphp/faker\" : \"^1.9.1\", \"mockery/mockery\" : \"^1.4.2\", \"nunomaduro/collision\" : \"^5.0\", \"phpunit/phpunit\" : \"^9.3.3\" }, \"scripts\" : { \"post-autoload-dump\" : [ \"Illuminate\\\\Foundation\\\\ComposerScripts::postAutoloadDump\", \"@php artisan package:discover --ansi\" ], \"post-root-package-install\" : [ \"@php -r \\\"file_exists(\'.env\') || copy(\'.env.example\', \'.env\');\\\"\" ], \"post-create-project-cmd\" : [ \"@php artisan key:generate --ansi\" ], \"ide\" : [ \"@php artisan ide-helper:generate\", \"@php artisan ide-helper:meta\", \"@php artisan ide-helper:model --write\" ], \"clear\" : [ \"@php artisan cache:clear\", \"@php artisan config:cache\" ] }, \"autoload-dev\" : { \"psr-4\" : { \"Tests\\\\\" : \"tests/\" } }, \"keywords\" : [ \"framework\", \"laravel\" ], \"minimum-stability\" : \"dev\", \"prefer-stable\" : true, \"extra\" : { \"laravel\" : { \"dont-discover\" : [ ] } }, \"autoload\" : { \"classmap\" : [ \"vendor/alipay\" ], \"psr-4\" : { \"App\\\\\" : \"app/\", \"Database\\\\Factories\\\\\" : \"database/factories/\", \"Database\\\\Seeders\\\\\" : \"database/seeders/\" }, \"files\" : [ \"bootstrap/helpers.php\" ] }, \"config\" : { \"optimize-autoloader\" : true, \"preferred-install\" : \"dist\", \"sort-packages\" : true, \"allow-plugins\" : { \"easywechat-composer/easywechat-composer\" : false } }, \"license\" : \"MIT\", \"type\" : \"project\" }更新 2:在我删除线之后
\"classmap\" : [ \"vendor/alipay\" ]错误输出更改:
Loading composer repositories with package information Info from https://repo.packagist.org: #StandWithUkraine Updating dependencies Your requirements could not be resolved to an installable set of packages. Problem 1 - php-http/guzzle6-adapter v0.1.0 requires guzzlehttp/guzzle ~6.0 -> found guzzlehttp/guzzle[6.0.0, ..., 6.5.x-dev] but it conflicts with your root composer.json require (^7.0.1). - php-http/guzzle6-adapter[v0.2.0, ..., v0.2.1] require php-http/client-tools ^0.1 -> could not be found in any version, there may be a typo in the package name. - php-http/guzzle6-adapter[dev-master, v0.3.0, ..., v0.4.1, v1.0.0, ..., v1.1.1, v2.0.0, ..., 2.x-dev] require guzzlehttp/guzzle ^6.0 -> found guzzlehttp/guzzle[6.0.0, ..., 6.5.x-dev] but it conflicts with your root composer.json require (^7.0.1). - lokielse/omnipay-wechatpay dev-master requires php-http/guzzle6-adapter * -> satisfiable by php-http/guzzle6-adapter[dev-master, v0.1.0, ..., v0.4.1, v1.0.0, v1.1.0, v1.1.1, v2.0.0, v2.0.1, v2.0.2, 2.x-dev]. - Root composer.json requires lokielse/omnipay-wechatpay dev-master -> satisfiable by lokielse/omnipay-wechatpay[dev-master]. Potential causes: - A typo in the package name - The package is not available in a stable-enough version according to your minimum-stability setting see <https://getcomposer.org/doc/04-schema.md#minimum-stability> for more details. - It\'s a private package and you forgot to add a custom repository to find it Read <https://getcomposer.org/doc/articles/troubleshooting.md> for further common problems.更新 3:我认为与您分享的一些信息很重要:
- 我正在处理的项目是由另一个我不再联系的开发人员制作的遗留应用程序。所以,我现在的目标是让应用程序的本地/功能副本运行。目前,有一个带有此代码的生产站点,所以据说它可以工作。
- 如果我不删除更新 2 中提到的 \"classmap\" 行,则不会发生任何变化,并且我一直停留在第一条错误消息中。
- 对于新的错误信息,我注意到依赖版本之间存在冲突:php-http/guzzle6-adapter 需要 guzzlehttp/guzzle 的版本,但 composer.json 文件要求更高的版本。正如我之前提到的,我没有创建这个 .json 文件,我只是让它工作,所以我尝试降级 guzzlehttp/guzzle 包的版本以避免冲突,但随后我收到了新的错误消息。所以,不知道有没有什么策略可以从头重新构建composer.json文件,这样我就可以一一添加正确的依赖了?你有什么可以建议我从头开始的策略吗?谢谢。
-
你看过this的问题吗?您可能应该删除供应商文件夹并重新安装。
-
是的,我试过了。我删除了供应商文件夹,结果完全相同,如果我运行 \"composer install\" 或 \"composer update\"。
-
请分享更多详细信息,例如完整的
composer.json,它可以帮助其他人重现问题。另外,请记住,这两个项目已经好几个月没有看到任何更新了。也许这些软件包有问题? -
除了迄今为止在 cmets 中的所有好的建议之外,我要做的第一件事是展示您的项目中实际的
vendor/alipay是什么。该消息只是 Composer 告诉您发生了什么,但它来自实用程序方面。如果您不喜欢实用程序调用的结果,则需要阅读此诊断消息并咨询您的项目/系统,以使用迄今为止您需要了解的尽可能多的信息来丰富它,以更改您的项目/系统配置以便可以成功调用该实用程序。如果 Composer 能够提供更多信息,它已经可以了。 -
请加全部通过编辑来澄清您的问题。不要链接到外部资源。另外,您是否检查了
composer.json中的\"classmap\" : [ \"vendor/alipay\" ],做了什么?如果该文件或文件夹不存在,为什么不删除该行?
标签: php composer-php alipay