当前位置: 首页 > 知识库问答 >
问题:

依赖地狱:安装Sonata用户

申思远
2023-03-14

大家好,恐怕又有一个新手被卡住了,试图把所有的碎片粘在一起。至少可以说,这是相当令人沮丧的:(

我搜索了这些论坛,看到了无数可能的解决方案,但迄今为止没有一个有效。大多数也很旧,版本已经更新了。

我们开始吧:

https://sonata-project.org/bundles/user/2-2/doc/reference/installation.html

当我尝试这个:作曲家需要奏鸣曲项目/易扩展包

我明白了:

使用sonata project/easy extends bundle的^2.1版本。/composer.json已更新加载具有包信息更新依赖项(包括require dev)的composer存储库无法将您的需求解析为可安装的包集。

问题1-找不到所请求的包sonata-project/admin-bundle==2.3.7.0。问题2-只能安装一个:sonata-project/block-bundle[2.3.8, 2.2.13]。-只能安装一个:sonata-project/block-bundle[2.3.8, 2.2.13]。-只能安装一个:sonata-project/block-bundle[2.3.8, 2.2.13-sonata-project/admin-bundle dev-master需要sonata-project/block-bundle^2.3.8-

潜在原因:-软件包名称输入错误-根据您的最低稳定性设置,软件包的版本不够稳定

安装失败,恢复./composer.json到其原始内容。

我只是按照指示做,简单明了!我读了这些文章,并尝试了一些解决方案,在这里,并通过谷歌搜索。

不管怎样,我是一个很久以前的老Unix黑客,我不记得开源构建有这么难...

有什么线索吗?非常感谢提前!

P. S.我正在使用Debian虚拟盒子,因为我认为这比在我的视窗8电脑上尝试更容易。

以下是composer.json中唯一更改的部分:

"require": {
    "php": ">=5.3.9",
    "symfony/symfony": "2.7.*",
    "doctrine/orm": "~2.2,>=2.2.3,<2.5",
    "doctrine/dbal": "<2.5",
    "doctrine/doctrine-bundle": "~1.4",
    "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",
    "friendsofsymfony/user-bundle": "~2.0@dev",
    "sonata-project/admin-bundle": "2.3.*",
    "sonata-project/doctrine-orm-admin-bundle": "^2.3",
    "sonata-project/easy-extends-bundle": "^2.1",
    "sonata-project/user-bundle": "^2.2",
    "sonata-project/easy-extends-bundle": "dev-master"
},

共有1个答案

邓鸿彩
2023-03-14

1.清空vendor文件夹:删除其中的所有内容,但不要删除自身。可能是下载的依赖关系被破坏导致了您的问题。

2.将composer.json的require部分替换为以下内容:

"require": {
    "php": ">=5.3.9",
    "symfony/symfony": "2.7.*",
    "doctrine/orm": "~2.2,>=2.2.3,<2.5",
    "doctrine/dbal": "<2.5",
    "doctrine/doctrine-bundle": "~1.4",
    "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",
    "friendsofsymfony/user-bundle": "~1.3",
    "sonata-project/admin-bundle": "2.3.*",
    "sonata-project/doctrine-orm-admin-bundle": "^2.3",
    "sonata-project/easy-extends-bundle": "^2.1",
    "sonata-project/user-bundle": "^2.2"
},

请注意“friendsofsymfony/user bundle”版本的区别。

现在应该可以了!如果它仍然给你带来麻烦,请告诉我。

 类似资料:
  • If you have just checked out a package from version control, you will need to install those dependencies. If you are adding dependencies for your project, then those dependencies are automatically ins

  • 我一直在挣扎如何接近地狱。我有一个Maven IntelliJ Scala项目,它使用了一些aws sdk。最近添加了kinesis sdk,引入了不兼容的Jackson版本。 我的问题是:我如何系统地处理Jar地狱的问题? 我了解类加载器以及maven如何在重复的JAR之间进行选择,但我仍然不知道解决这个问题的实际步骤。 我目前的尝试是基于尝试和错误,我在这里用杰克逊的例子来概述: 首先,我看到

  • 问题内容: 使用npm,我们可以使用option 在全局安装模块。我们如何在package.json文件中执行此操作? 假设这些是我在package.json文件中的依赖项 当我运行时,我只想全局安装,其余的应该本地安装。有这个选项吗? 问题答案: 新注: 您可能不需要或不需要这样做。您可能想要做的就是将那些用于构建/测试等命令依赖关系的类型放在package.json 的部分中。 每当您在pac

  • 安装包时(通过使用python setup.py install),依赖项从python包索引(pypi.python.org)获取。但我的目标主机无法访问internet。我已将依赖项放在本地目录下,如下所示。 通过运行?

  • ###########################################################################################################################################################################/symfony"到"5.2.*" 更新依赖项 您的需求无

  • 问题内容: 我正在使用和。 我想从URL安装额外的库,例如安装setup.py上的git repo。 我在中添加了额外的参数。这意味着,我的库需要额外的库,并且还必须安装它们。 但是git repos之类的网址不是in中的有效字符串。假设,我想从github安装一个库。我已经搜索过该问题,发现了可以放入库中的内容。但这仍然行不通。这是我的依赖链接定义; 链接有效。我可以使用这些URL从Intern