首页 文章

错误在macOS上安装Composer(JIT编译失败)

提问于
浏览
2

当我在macOS终端中运行 composer --version 时,我收到以下错误:

PHP警告:preg_match():JIT编译失败:第755行的phar:///usr/local/bin/composer.phar/vendor/symfony/console/Application.php中没有更多内存

Warning: preg_match(): JIT compilation failed: no more memory in phar:///usr/local/bin/composer.phar/vendor/symfony/console/Application.php on line 755
PHP Warning:  preg_match(): JIT compilation failed: no more memory in phar:///usr/local/bin/composer.phar/vendor/symfony/console/Application.php on line 759

Warning: preg_match(): JIT compilation failed: no more memory in phar:///usr/local/bin/composer.phar/vendor/symfony/console/Application.php on line 759
PHP Warning:  preg_split(): JIT compilation failed: no more memory in phar:///usr/local/bin/composer.phar/vendor/symfony/console/Application.php on line 654

Warning: preg_split(): JIT compilation failed: no more memory in phar:///usr/local/bin/composer.phar/vendor/symfony/console/Application.php on line 654
PHP Warning:  preg_split(): JIT compilation failed: no more memory in phar:///usr/local/bin/composer.phar/vendor/symfony/console/Application.php on line 1091

Warning: preg_split(): JIT compilation failed: no more memory in phar:///usr/local/bin/composer.phar/vendor/symfony/console/Application.php on line 1091
PHP Warning:  preg_replace(): JIT compilation failed: no more memory in phar:///usr/local/bin/composer.phar/vendor/symfony/console/Formatter/OutputFormatter.php on line 36

Warning: preg_replace(): JIT compilation failed: no more memory in phar:///usr/local/bin/composer.phar/vendor/symfony/console/Formatter/OutputFormatter.php on line 36

  [ErrorException]                                          
  preg_match_all(): JIT compilation failed: no more memory

2 回答

  • 4

    这是一个已知的PHP 7.3 bug .

    作为临时修复,编辑您的php.ini文件(在我的情况下: vi /usr/local/etc/php/7.3/php.ini ),通过更改以下命令禁用PHP PCRE JIT编译:

    ;pcre.jit=1
    

    pcre.jit=0
    
  • 3

    我通过禁用PCRE jit编译解决了这个问题 .

    我想你通过自制软件安装了php 7.3 .

    如果是,请在 /usr/local/etc/php/7.3/conf.d 中创建 zzz-myphp.ini ,其中包含以下内容:

    ; My php.ini settings
    ; Fix for PCRE "JIT compilation failed" error
    [Pcre]
    pcre.jit=0
    

相关问题