Symfony2:如何安装dev-master版本的Doctrine来解决使用composer的“反序列化的错误数据格式”?

时间:2014-09-15 13:32:57

标签: symfony doctrine-orm composer-php

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


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

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

...但是作曲家抱怨它找不到匹配的包:

  

doctrine / orm dev-master需要doctrine / dbal> = 2.5-dev,< 2.6-dev - >   找不到匹配的包。

如何解决依赖关系而不分叉或提升minimum-stability中的composer.json

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

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

1 个答案:

答案 0 :(得分:6)

您可以"白名单" 目前的稳定性水平低于"全球" minimum-stability使用 stability flags 在您的composer.json中定义。

为了阻止作曲家抱怨...

  

doctrine / orm dev-master需要doctrine / dbal> = 2.5-dev,< 2.6-dev - >   找不到匹配的包

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

因此执行......

composer require doctrine/dbal:@dev

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

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

对所有与全局minimum-stability不匹配的依赖项重复此过程,直到作曲家安装而不抱怨。


进一步阅读:

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