当我尝试使用composer require xyz
向我的项目添加新依赖项时,出现以下错误:
autoloader预期类“PackageVersions \ Versions”将在文件“... / vendor / ocramius / package-versions / src / PackageVersions / Versions.php”中定义。
找到了该文件,但该类不在其中,类名或命名空间可能有拼写错误。
我挖掘了该文件,看到Versions
类在那里,在正确的文件中,但是具有以下名称:
Versions_composer_tmp0
命名空间声明似乎在整个项目中都很好,以及php开启标记(我读过这可能会导致这样的问题)。
此外,我注意到use
类文件中的所有Installer
语句(创建Versions
类的语句)都被phpstorm标记为Undefined Classes
。它们都应该在命名空间Composer\xyz
中找到。
我没有成功就累了下面的事情:
composer self-update
ocramius
供应商文件夹,以便作曲家再次下载Versions
类的整个目的是用每个composer install
或composer update
修改
我正在尝试安装1up-lab/OneupUploaderBundle
,Ocramius/PackageVersions
已经存在作为依赖项(我手动不需要它)
编辑2:
我刚刚看到那台服务器:运行也不起作用。所以问题肯定与我正在尝试安装的软件包无关。我设法通过将类从Versions_composer_tmp0
重命名为Versions
来运行服务器。
答案 0 :(得分:1)