- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在我正在处理的 Symfony 2.7 项目中,我通过 Composer 1.6.5 使用了很多包。
几天后,我无法再添加新包或重建 composer.lock。它一直在耗尽内存。
当我尝试添加新包时,我开始注意到这个问题。但问题不在于那个包裹。因为作为测试,我现在正尝试通过删除那个 composer.lock 文件并执行以下命令来重建我的 composer.lock:
php -d memory_limit=-1 C:/ProgramData/ComposerSetup/bin/composer.phar install -vvv
当我在运行该命令时跟踪我的 ram 消耗时,它从未超过 1.5G 限制,而我的 Windows 机器仍然有足够的 ram 可用。
我注意到这个错误通常是在 composer 试图解析一个特定的包并将其写入缓存时/之后抛出的。那个特定的包确实消耗了大量内存(高达 0.5G)一些研究让我了解到这个包没有任何问题,它已经在我们的项目中,因此在 composer.json 中已经存在了三年多了。我还在 Mac 上运行了相同的 composer install 命令,它确实设法解析了这个包并将其写入缓存,但是后来当它试图删除另一个不相关的包时失败了,因为那时 mac 上的内存是完全消耗。
这是我得到的错误:
...
Downloading http://packagist.org/p/kriswallsmith/spork%24dafe3f5808d858c7b15bd464923710bf24d5f7457b7b6c50a298ca1bea1a35a0.json
Writing C:/Users/david/AppData/Local/Composer/repo/https---packagist.org/provider-kriswallsmith$spork.json into cache
Fatal error: Out of memory (allocated 1424228352) (tried to allocate 268435456 bytes) in phar://C:/ProgramData/ComposerSetup/bin/composer.phar/src/Composer/DependencyResolver/Solver.php on line 220
PHP Fatal error: Out of memory (allocated 1424228352) (tried to allocate 268435456 bytes) in phar://C:/ProgramData/ComposerSetup/bin/composer.phar/src/Composer/DependencyResolver/Solver.php on line 220
/cygdrive/c/ProgramData/ComposerSetup/bin/composer: line 10: 10284 Segmentation fault php "${dir}/composer.phar" "$@"
奇怪的是,直到几天前,当一个使用过的 Composer 需要我正在处理的包时,它工作得很好。
这是我的 3 个问题:
这是我的 composer.json 文件:
{
"name": "kulsol",
"license": "proprietary",
"type": "project",
"autoload": {
"psr-4": {
"": "src/",
"SymfonyStandard\\": "app/SymfonyStandard/"
},
"files": [
"src/helpers.php",
"app/AppKernel.php"
]
},
"autoload-dev": {
"psr-4": {
"Tests\\": "tests/"
}
},
"require": {
"php": ">=5.3.9",
"symfony/symfony": "2.7.*",
"doctrine/orm": "2.5.*",
"doctrine/dbal": "<2.6",
"doctrine/doctrine-bundle": "~1.4",
"twig/extensions": "~1.0",
"symfony/assetic-bundle": "~2.3",
"symfony/swiftmailer-bundle": "^2.3",
"symfony/monolog-bundle": "~2.4",
"sensio/distribution-bundle": "~4.0",
"sensio/framework-extra-bundle": "~3.0,>=3.0.2",
"incenteev/composer-parameter-handler": "~2.0",
"jms/serializer-bundle": "~2.0.0",
"gedmo/doctrine-extensions": "2.4.3",
"symfony/stopwatch": "^2.7",
"vich/uploader-bundle": "^0.14.0",
"nesbot/carbon": "^1.21",
"swiftmailer/swiftmailer": "^5.4",
"mtdowling/cron-expression": "^1.0",
"cron/cron-bundle": "^1.0",
"mustache/mustache": "^2.9",
"leafo/lessphp": "<0.5",
"friendsofsymfony/elastica-bundle": "^3.1",
"guzzlehttp/guzzle": "^6.1",
"oro/doctrine-extensions": "^1.0",
"willdurand/geocoder-bundle": "^4.0",
"rlerdorf/opcache-status": "dev-master",
"henrikbjorn/stampie-bundle": "^1.0",
"stof/stampie-extra": "^0.2.0",
"isinlor/buzz-bundle": "^1.0",
"ocramius/proxy-manager": "~1.0",
"beberlei/DoctrineExtensions": "^1.0",
"doctrine/doctrine-migrations-bundle": "^1.0",
"ramsey/uuid": "3.*",
"phpoffice/phpexcel": "1.8.1",
"misd/guzzle-bundle": "v1.1.5",
"php-http/guzzle6-adapter": "^1.1",
"php-http/httplug-bundle": "^1.3",
"egeloen/google-map": "2.0.x-dev",
"egeloen/google-map-bundle": "dev-master#432438624d74f0384cc727b3609af3cc4314b152",
"ezyang/htmlpurifier": "^4.8",
"tfox/mpdf-port-bundle": "1.3.*",
"ramsey/uuid-doctrine": "^1.2",
"oneup/uploader-bundle": "^1.7",
"webmozart/assert": "^1.2",
"league/tactician-bundle": "~0.4",
"kuleuven-gbiomed/message": "^0.1.0",
"danielstjules/stringy": "^3.0",
"html2text/html2text": "^4.0",
"kuleuven-gbiomed/collection-utilities": "^0.1",
"kuleuven/distribution-api": "*",
"jms/serializer": "^1",
"friendsofsymfony/rest-bundle": "^2.3"
},
"require-dev": {
"sensio/generator-bundle": "~2.3",
"kahlan/kahlan": "^3.1",
"phpunit/phpunit": "^5.7",
"doctrine/doctrine-fixtures-bundle": "^2.3",
"friendsofphp/php-cs-fixer": "^2.2",
"liip/functional-test-bundle": "^1.7",
"vimeo/psalm": "^0.3.51",
"phpmd/phpmd": "^2.6"
},
"scripts": {
"post-root-package-install": [
"SymfonyStandard\\Composer::hookRootPackageInstall"
],
"post-install-cmd": [
"Incenteev\\ParameterHandler\\ScriptHandler::buildParameters",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::removeSymfonyStandardFiles",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::prepareDeploymentTarget"
],
"post-update-cmd": [
"Incenteev\\ParameterHandler\\ScriptHandler::buildParameters",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::removeSymfonyStandardFiles",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::prepareDeploymentTarget"
]
},
"extra": {
"symfony-app-dir": "app",
"symfony-web-dir": "web",
"symfony-assets-install": "relative",
"incenteev-parameters": {
"file": "app/config/parameters.yml"
},
"symfony-var-dir": "var",
"symfony-bin-dir": "bin",
"symfony-tests-dir": "tests"
},
"repositories": [
{
"type": "vcs",
"url": "https://github.com/Isinlor/SensioBuzzBundle.git"
},
{
"type": "vcs",
"url": "https://github.com/kuleuven-gbiomed/collection-utilities.git"
},
{
"type": "path",
"url": "distribution/API/"
}
],
"config": {
"bin-dir": "bin"
}
}
最佳答案
如果它可以帮助其他人,这里有一个快速的解决方案
事实证明,这是一个与 windows-xampp 相关的问题。 xampp 仅支持 32 位版本的 php。这反过来意味着它始终只允许 memory_limit 到 1.5G(或 2G,其中 0.5G 分配给其他地方)。这有效地忽略了 php.ini 中或运行时设置的任何 memory_limit 设置。
通过下载 64 位 php 并从该 64 位 php 版本运行 composer 解决了这个问题。这给了我 3G,足以运行 composer
关于php - composer install 不断消耗所有 RAM 内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51261141/
如果这不是一个错误,那就是另一个错误。如果不是那样的话,那就是别的东西了。我觉得我的项目已经改变了很多,现在只是试图解决代码签名问题,结果一切都搞砸了。我严格按照说明进行操作,但出现错误,例如当前的“
我不确定是否有一些我不知道的内置变量或规则,或者 make 是否有问题,或者我只是疯了。 对于我的一个项目,我有一个如下的 makefile: CC=g++ CFLAGS=-O3 `libpng-co
我有大约 10 个 div,它们必须不断翻转,每个 div 延迟 3 秒 这个 codrops 链接的最后一个效果是我正在寻找的,但无需单击 div http://tympanus.net/Devel
我如何使用 jQuery 持续运行 PHP 脚本并每秒获取响应,以及将鼠标上的少量数据发送到同一脚本? 我真的必须添加一些随机扩展才能让这么简单的计时器工作吗? 最佳答案 To iterate is
JBoss 4.x EJB 3.0 我见过如下代码(大大简化): @Stateless @TransactionAttribute(TransactionAttributeType.NOT_SUPPO
使用 PHPStorm,我试图忽略每次尝试进行 git 提交时 pop 的 workspace.xml。 我的 .gitignore 看起来像: /.idea/ .idea/workspace.xml
我是一名优秀的程序员,十分优秀!