0

我正在将现有的 SS 安装从 3.0.4 升级到 3.1。我按照此处的说明进行升级:http ://doc.silverstripe.org/framework/en/installation/upgrading

现在我正在尝试通过 Composer 更新几个 SS 模块(特别是我尝试更新 Comments 和 DataObjectsAsPage)。我已将根目录中的 composer.json 文件更新为以下内容:

{
"name": "silverstripe/installer",
"description": "The SilverStripe Framework Installer",
"require": {
    "php": ">=5.3.2",
    "silverstripe/cms": "3.1.x-dev",
    "silverstripe/framework": "3.1.x-dev",
    "silverstripe-themes/simple": "*"
},
"require-dev": {
    "silverstripe/docsviewer": "*",
    "silverstripe/behat-extension": "*",
    "silverstripe/buildtools": "*",
    "phpunit/phpunit": "3.7.*"
},
"config": {
    "process-timeout": 600  
},
"minimum-stability": "dev",
"silverstripe/comments": "*",
"arambalakjian/dataobjectaspage": "*"

}

然后我导航到我的项目目录并运行以下两个

composer update silverstripe/comments
composer update arambalakjian/dataobjectaspage

尝试更新两个扩展时,我收到了同样的错误:

Your requirements could not be resolved to an installable set of packages.
Problem 1
- Installation request for silverstripe/cms 3.1.x-dev -> satisfiable by silverstripe/cms[3.1.x-dev].
- Can only install one of: silverstripe/cms[3.1.x-dev, 3.0.3].
- Installation request for silverstripe/cms == 3.0.3.0 -> satisfiable by silverstripe/cms[3.0.3].

如何通过 Composer 更新扩展?

谢谢你的帮助。

4

2 回答 2

0

Colymba 的回答是正确的,但我确实想详细说明以防其他人遇到这些错误......

我做了以下通过 Composer 安装模块:

首先,我删除了 3.0.4 安装中保留的 composer.lock 文件。接下来,我删除了我的供应商目录并运行

composer update

这将我的 Silverstripe 安装更新为 3.1(请注意,如果您自定义了“简单”主题并且不希望它被覆盖,您可能希望将其从 composer.json 文件的所需部分中删除或重命名)并且我能够然后运行

composer require silverstripe/comments

该模块的最新版本已成功安装。

于 2013-06-10T01:03:52.207 回答
0

你有没有尝试过:

composer require silverstripe/comments
composer require arambalakjian/dataobjectaspage

哪个应该定义您的项目的要求。查看http://doc.silverstripe.org/framework/en/installation/composer,其中包含有关如何将 composer 与 SS 一起使用的相当可扩展的详细信息

于 2013-06-06T06:46:12.080 回答