无论我做什么,作曲家的记忆都会更新



我浏览了一堆网站推荐和StackOverflow的答案和评论,试图弄清楚这一点,现在我不知所措。我使用的是带有macOS Big Sur(最新(的MacBook Pro 2019,16GB RAM,使用带有PHP 5.6或7.3的MAMP Pro(与回购兼容(。回购上一次更新其作曲家是在去年。

Me@My-MacBook-Pro the-repo % composer update --verbose
Loading composer repositories with package information
Updating dependencies
Fatal error: Allowed memory size of 1610612736 bytes exhausted (tried to allocate 4096 bytes) in phar:///Applications/MAMP/bin/php/composer/src/Composer/DependencyResolver/Solver.php on line 204

当尝试使用PHP 5.6或7.3时会发生这种情况,repo和我的MAMP Pro都兼容。我使用MAMP Pro是因为这是我在Mac上运行这些多版本repo的唯一途径(它始于Catalina,Homebrew停止支持旧库,试图在Mac上找到和编译正确的PHP 5库是一场噩梦(。

repo以CGI的形式在MAMP PRo Apache、PHP 5.6或7.3上运行,默认版本设置为使用该PHP版本激活CLI命令。据我所知,Composer运行那里指定的PHP版本。运行php -v可以显示预期的版本。

% composer --version
Composer version 2.1.14 2021-11-30 10:51:43
% composer self-update
You are already using the latest available Composer version 2.1.14 (stable channel).

我试着检查https://getcomposer.org/doc/articles/troubleshooting.md#memory-限制错误获取有关如何处理内存不足错误的更多信息。尝试这些建议无济于事。对于这两个php版本,我都将MAMP Pro的php.ini内存增加到了4G。运行printenv不显示COMPOSER_MMEMORY_LIMIT变量

% php -d memory_limit=-1 `which composer` update
Could not open input file: composer:

我将vendor文件夹移到了存储库之外。同样的事情。我完全不知道如何在这个回购上运行composer update。将--verbose添加到命令中没有显示详细信息,我甚至无法判断它在哪个包上失败

我发现这个问题是因为我在php.ini中有MB或GB,而不是数字后面只有M。。。所以我想我忘记了PHP在内存限制方面的一些非直观格式。愚蠢的我。

相关内容

  • 没有找到相关文章

最新更新