Composer require内存不足 PHP致命错误:允许的内存大小为1610612736字节已耗尽旅行者

问题描述

嗨,我正在尝试安装voyager时解决一些问题。 当我尝试运行composer时,我遇到了内存不足错误。我不明白到底发生了什么。其结果在我的控制台上:

@DESKTOP->>>>> / c / xampp / htdocs /(主) $作曲者需要tcg / voyager 将^ 1.4版本用于tcg / voyager ./composer.json已更新 使用软件包信息加载作曲家存储库 更新依赖关系(包括require-dev) PHP致命错误:在第83行上的phar:// C:/composer/composer.phar/src/Composer/DependencyResolver/RuleSet.PHP中已耗尽1610612736字节的允许内存大小(试图分配134217736字节)

也许composer.JSON有问题,我需要检查一下。您应该注意什么问题 我的composer.json文件``` {

{
"name": "laravel/laravel","type": "project","description": "The Laravel Framework.","keywords": [
    "framework","laravel"
],"license": "MIT","require": {
    "PHP": "^7.2","convertapi/convertapi-PHP": "^1.1","fideloper/proxy": "^4.0","laravel/framework": "^6.2","laravel/socialite": "^4.3","laravel/tinker": "^1.0","openpayu/openpayu": "^2.2","paypal/rest-api-sdk-PHP": "^1.14","pragmarx/tracker": "^3.5","spatie/laravel-backup": "^6.8","spatie/pdf-to-image": "^2.0","tcg/voyager": "^1.3"
},"require-dev": {
    "facade/ignition": "^1.4","fzaninotto/faker": "^1.4","mockery/mockery": "^1.0","nunomaduro/collision": "^3.0","PHPunit/PHPunit": "^8.0","tanmuhittin/laravel-google-translate": "^1.0"
},"config": {
    "optimize-autoloader": true,"preferred-install": "dist","sort-packages": true
},"extra": {
    "laravel": {
        "dont-discover": []
    }
},"autoload": {
    "psr-4": {
        "App\\": "app/"
    },"files": [
        "app/Helpers/HelperFunctions.PHP"
    ],"classmap": [
        "database/seeds","database/factories"
    ]
},"autoload-dev": {
    "psr-4": {
        "Tests\\": "tests/"
    }
},"minimum-stability": "dev","prefer-stable": true,"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"
    ]
},"repositories": {
    "hooks": {
        "type": "composer","url": "https://larapack.io"
    }
}

}

解决方法

您还可以使用以下命令将voyager安装到服务器中: COMPOSER_MEMORY_LIMIT=-1 composer require tcg/voyager

不仅仅是composer require tcg/voyager

我在这个thread上找到了这个。希望能帮助到你。不过,安迪·宋(Andy Song)的解决方案更好。

,

好像您正在使用xampp。 您可以尝试在memory_limit中更改php.inienter image description here

查找此内容:

;memory_limit=512M 

更改为:

memory_limit =-1

然后从xampp重新启动Apache

,

如果您的作曲者位于/ usr / local / bin /中,请使用:

php -d memory_limit=-1 /usr/local/bin/composer require tcg/voyager

-

请参阅作曲者文档https://getcomposer.org/doc/articles/troubleshooting.md#memory-limit-errors

要获取当前的memory_limit值,请运行:

php -r "echo ini_get('memory_limit').PHP_EOL;"

尝试增加php.ini文件中的限制(例如,对于类似Debian的系统,为/etc/php5/cli/php.ini):

;使用-1表示无限制,或定义一个明确的值,例如2G

memory_limit = -1

Composer还遵守由COMPOSER_MEMORY_LIMIT环境变量定义的内存限制:

COMPOSER_MEMORY_LIMIT=-1 composer.phar <...>

或者,您可以使用命令行参数来增加限制:

php -d memory_limit=-1 composer.phar <...>