当我从composer运行我的安装时,我有这个错误:
λ composer install您正在运行启用了xdebug的composer。这对运行时性能有重大影响。请参阅https://getcomposer.org/xdebug使用软件包信息加载composer存储库更新依赖项(包括require-dev)无法将您的需求解析为可安装的软件包集。
错误代码:
问题1 -请求的软件包antoineb 1/smoney_bundle 1.0以antoineb 1/smoney_bundle[dev-master]的形式存在,但这些被您的约束拒绝。
我的composer.json
{
"name": "project",
"license": "proprietary",
"type": "project",
"minimum-stability": "dev",
"prefer-stable" : true,
"autoload": {
"psr-4": {
"": "src/"
}
},
"config": {
"preferred-install": "dist"
},
"repositories": [
{
"url": "bitbucket url",
"type": "vcs"
}
],
"require": {
"php": ">=5.5.9",
"antoineb1/smoney_bundle": "1.0"
}
}
6条答案
按热度按时间uklbhaso1#
版本约束
"1.0"
是interpreted internally作为"1.0.0.0-stable"
版本。但唯一可用的版本是:
antoineb1/smoney_bundle[dev-master].
因此,您可以根据适合您的版本将指定版本更改为以下任一版本:
1.0.*
(composer将其视为>=1.0.0.0-dev <1.1.0.0-dev
--可能无法工作,因为该包中显然没有任何版本)dev-master
dev-master#<hash>
@dev
参见composer schema以供参考。
23c0lvtd2#
@Guillaume在this answer下面的评论值得更大的介绍。
看来 composer 想要一个有
v
的git release。所以应该是
v1.1.0
而不是1.1.0
。我花了大约90分钟的时间
mikeill/my_repo 3.3.10 requires composer/installers 1.0.*@dev -> satisfiable by composer/installers[1.0.x-dev, v1.0.0, ...] but these conflict with your requirements or minimum-stability.
在最终发现这个线程之前,有很多github问题以及一两个SO帖子。
wz3gfoph3#
有一段时间,我在这个问题上失去了大量的头发,时间和理智-事实证明,我的问题是,我在包本身的composer.json中指定了一个版本为“dev-master”。
参考:https://getcomposer.org/doc/04-schema.md#version
其中规定:
注意:Packagist使用的是可扩展的存储库,所以上面的陈述对Packagist来说也是非常正确的。自己指定版本很可能会在某些时候产生问题由于人为错误。
我删除了这个版本元素,它工作得很完美:)
n9vozmp44#
我遇到了这个问题,并发现了另一个问题,我已经完全忘记了,有人可能会发现有用的必须检查。
在我的例子中,我有一个非常老的git项目,它已经被forked了一段时间,我不得不将它们合并在一起(尽管forked项目没有太多的变化)。所以我确定了旧项目的分割点,并将其标记为composer版本,这样我就可以用它来代替新项目。
但我忘了,最初我们并没有使用composer。因此,标记点处的文件结构缺少composer.json。我不明白为什么我的新标签没有出现在“存在”列表中,这些列表中的东西“被你的禁忌拒绝”。最终我意识到我必须在旧标签上创建一个分支,选择为项目创建composer.json的提交,并重新标记,然后一切都工作了。
希望这将唤起某人的记忆,如果他们来狩猎与此错误信息铭记。
vdzxcuhz5#
搜索了一会儿后,我发现我的composer文件中缺少存储库。有人删除了它,因此只有以前的版本有效。
js5cn81o6#
我创建了标签和发布,并将repo发布到Packagist。什么都不管用!我不得不将仓库添加到composer.json中的“repositories”键中: