问题描述
嗨,我正在尝试安装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.ini
。
查找此内容:
;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 <...>