Symfony2 : How to install the dev-master version of Doctrine to resolve "Erroneous data format for unserializing" with composer?

标签 symfony doctrine-orm composer-php

我正在尝试修复 Doctrine 的反序列化数据格式错误错误,如 here 所引用。 here

<小时/>

我的composer.json看起来像这样......

require: {
    "symfony/symfony": "~2.5",  
    "doctrine/doctrine-bundle": "~1.2", 
    "doctrine/orm": "dev-master",
    "...": "..."
}

...但是 Composer 提示它找不到匹配的包:

doctrine/orm dev-master requires doctrine/dbal >=2.5-dev,<2.6-dev -> no matching package found.

如何在不 fork 或提高 composer.json 中的最低稳定性的情况下解决依赖关系?

更新: Nifr 的建议奏效了,这是新的配置:

"symfony/symfony": "~2.5",
"doctrine/orm": "dev-master",
"doctrine/dbal": "@dev",
"doctrine/common": "@dev",
"doctrine/doctrine-bundle": "@dev",

最佳答案

您可以将当前稳定性级别低于 Composer 中定义的“全局” 最低稳定性 的包列入“白名单”。使用 stability flags 读取 json

为了阻止 Composer 提示......

doctrine/orm dev-master requires doctrine/dbal >=2.5-dev,<2.6-dev -> no matching package found.

...只需要明确使用@dev稳定性标志的doctrine/dbal包。

因此执行...

composer require doctrine/dbal:@dev

...或手动将条目添加到您的composer.json:

require: {
   "...": "...",
   "doctrine/orm": "dev-master",
   "doctrine/dbal": "@dev"
}

对与全局最低稳定性不匹配的所有依赖项重复此过程,直到 Composer 安装且没有任何提示为止。

<小时/>

进一步阅读:

Igor W. 发表了一篇出色的 blog article详细解释稳定性标志。

关于Symfony2 : How to install the dev-master version of Doctrine to resolve "Erroneous data format for unserializing" with composer?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25849311/

相关文章:

php - "Class XXX is not a valid entity or mapped super class"在文件系统中移动类后

laravel - 为Laravel安装Elasticsearch时出现问题

npm - Composer 更新失败,错误为 "npm-signature"

php - Symfony 2 阻塞并发

forms - Controller 中的 Symfony2 渲染表单

python - django和symfony2的相似度有多少

Laravel 5 - artisan 种子 [ReflectionException] 类 SongsTableSeeder 不存在

php - 您的要求无法解析为一组可安装的软件包。 - 交响乐项目

php - 映射相互不一致

php - Symfony3 多对多关联查询中的 Doctrine2