致命错误:找不到接口“ Psr \ Container \ ContainerInterface”

时间:2018-12-05 03:10:53

标签: php laravel composer-php

两个星期前我没遇到任何问题,但今天在我安装作曲家安装时出现了

  

使用软件包信息加载composer存储库

     

从锁定文件安装依赖项(包括require-dev)

     

无需安装或更新

     

生成优化的自动加载文件

     

Illuminate \ Foundation \ ComposerScripts :: postAutoloadDump   PHP致命错误:在第8行的/opt/lampp/htdocs/nuevodirectorio/ClinicaLaravel/vendor/laravel/framework/src/Illuminate/Contracts/Container/Container.php中找不到接口'Psr \ Container \ ContainerInterface'

     

致命错误:在第8行的/opt/lampp/htdocs/nuevodirectorio/ClinicaLaravel/vendor/laravel/framework/src/Illuminate/Contracts/Container/Container.php中找不到接口“ Psr \ Container \ ContainerInterface”

这是Container.php代码的一部分:

<?php
  namespace Illuminate\Container;

  use Closure;
  use Exception;
  use ArrayAccess;
  use LogicException;
  use ReflectionClass;
  use ReflectionParameter;
  use Illuminate\Support\Arr;
  use Illuminate\Contracts\Container\BindingResolutionException;
  use Illuminate\Contracts\Container\Container as ContainerContract;

  class Container implements ArrayAccess, ContainerContract
  {
   ...
  }

2 个答案:

答案 0 :(得分:0)

我有同样的问题。

仍在调查中,但是到目前为止,我发现运行composer install --no-dev [...]时,供应商的psr/container中有vendor/psr/container软件包,但是{ {1}}。

暂时,我修复了它,包括开发依赖项,直到找出真正的解决方案。

答案 1 :(得分:0)

在我的工作中,我们有同样的问题。在我们的例子中,有一个psr / container文件引起冲突,但是此文件在composer全局缓存中,因此删除vendor文件夹对我们没有帮助。我们发现的解决方案是使用以下命令清除作曲家缓存:

composer clearcache

然后删除供应商文件夹并运行composer install,一切正常。我希望此解决方案可以帮助某人。