Composer php Semantic MediaWiki的Composer安装存在问题

Composer php Semantic MediaWiki的Composer安装存在问题,composer-php,mediawiki,mediawiki-extensions,Composer Php,Mediawiki,Mediawiki Extensions,我昨天安装了一个新的MediaWiki,正在尝试安装语义MediaWiki插件 我尝试按照上的说明进行操作,但以下是我尝试安装composer合并插件时发生的情况: $ composer require wikimedia/composer-merge-plugin Using version ^1.3 for wikimedia/composer-merge-plugin ./composer.json has been updated > ComposerHookHandler::on

我昨天安装了一个新的MediaWiki,正在尝试安装语义MediaWiki插件

我尝试按照上的说明进行操作,但以下是我尝试安装composer合并插件时发生的情况:

$ composer require wikimedia/composer-merge-plugin
Using version ^1.3 for wikimedia/composer-merge-plugin
./composer.json has been updated
> ComposerHookHandler::onPreUpdate
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - remove mediawiki/core No version set (parsed as 1.0.0)|remove mediawiki/semantic-media-wiki 2.4.6
    - don't install mediawiki/semantic-media-wiki 2.4.6|remove mediawiki/core No version set (parsed as 1.0.0)
    - Installation request for mediawiki/core No version set (parsed as 1.0.0) -> satisfiable by mediawiki/core[No version set (parsed as 1.0.0)].
    - Installation request for mediawiki/semantic-media-wiki (installed at 2.4.6, required as >=2.4) -> satisfiable by mediawiki/semantic-media-wiki[2.4.6].


Installation failed, reverting ./composer.json to its original content.
因此,我只是将composer.local.json编辑为以下内容:

{
    "require": {
        "mediawiki/sub-page-list": ">=1.0",
        "mediawiki/semantic-media-wiki": ">=2.4"
    },
    "extra": {
        "merge-plugin": {
            "include": [
                "extensions/*/composer.json",
                "skins/*/composer.json"
            ]
        }
    }
}
并运行
编写器更新
。我得到了一个类似的错误:

$ composer update
> ComposerHookHandler::onPreUpdate
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - remove mediawiki/core No version set (parsed as 1.0.0)|remove mediawiki/semantic-media-wiki 2.4.6
    - don't install mediawiki/semantic-media-wiki 2.4.0|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.1|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.2|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.3|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.4|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.5|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.6|remove mediawiki/core No version set (parsed as 1.0.0)
    - Installation request for mediawiki/core No version set (parsed as 1.0.0) -> satisfiable by mediawiki/core[No version set (parsed as 1.0.0)].
    - Installation request for mediawiki/semantic-media-wiki >=2.4 -> satisfiable by mediawiki/semantic-media-wiki[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.4.4, 2.4.5, 2.4.6].
$ composer require mediawiki/semantic-media-wiki "~2.4" --update-no-dev
./composer.json has been updated
> ComposerHookHandler::onPreUpdate
Loading composer repositories with package information
Updating dependencies
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - remove mediawiki/core No version set (parsed as 1.0.0)|remove mediawiki/semantic-media-wiki 2.4.6
    - don't install mediawiki/semantic-media-wiki 2.4.0|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.1|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.2|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.3|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.4|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.5|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.6|remove mediawiki/core No version set (parsed as 1.0.0)
    - Installation request for mediawiki/core No version set (parsed as 1.0.0) -> satisfiable by mediawiki/core[No version set (parsed as 1.0.0)].
    - Installation request for mediawiki/semantic-media-wiki ~2.4 -> satisfiable by mediawiki/semantic-media-wiki[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.4.4, 2.4.5, 2.4.6].


Installation failed, reverting ./composer.json to its original content.
中的说明给出了类似的错误:

$ composer update
> ComposerHookHandler::onPreUpdate
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - remove mediawiki/core No version set (parsed as 1.0.0)|remove mediawiki/semantic-media-wiki 2.4.6
    - don't install mediawiki/semantic-media-wiki 2.4.0|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.1|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.2|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.3|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.4|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.5|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.6|remove mediawiki/core No version set (parsed as 1.0.0)
    - Installation request for mediawiki/core No version set (parsed as 1.0.0) -> satisfiable by mediawiki/core[No version set (parsed as 1.0.0)].
    - Installation request for mediawiki/semantic-media-wiki >=2.4 -> satisfiable by mediawiki/semantic-media-wiki[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.4.4, 2.4.5, 2.4.6].
$ composer require mediawiki/semantic-media-wiki "~2.4" --update-no-dev
./composer.json has been updated
> ComposerHookHandler::onPreUpdate
Loading composer repositories with package information
Updating dependencies
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - remove mediawiki/core No version set (parsed as 1.0.0)|remove mediawiki/semantic-media-wiki 2.4.6
    - don't install mediawiki/semantic-media-wiki 2.4.0|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.1|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.2|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.3|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.4|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.5|remove mediawiki/core No version set (parsed as 1.0.0)
    - don't install mediawiki/semantic-media-wiki 2.4.6|remove mediawiki/core No version set (parsed as 1.0.0)
    - Installation request for mediawiki/core No version set (parsed as 1.0.0) -> satisfiable by mediawiki/core[No version set (parsed as 1.0.0)].
    - Installation request for mediawiki/semantic-media-wiki ~2.4 -> satisfiable by mediawiki/semantic-media-wiki[2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.4.4, 2.4.5, 2.4.6].


Installation failed, reverting ./composer.json to its original content.
我没有对composer.json做任何操作,但为了完整起见:

{
"name": "mediawiki/core",
        "description": "Free software wiki application developed by the Wikimedia Foundation and others",
        "keywords": ["mediawiki", "wiki"],
        "homepage": "https://www.mediawiki.org/",
        "authors": [
                {
                        "name": "MediaWiki Community",
                        "homepage": "https://www.mediawiki.org/wiki/Special:Version/Credits"
                }
        ],
        "license": "GPL-2.0+",
        "support": {
                "issues": "https://bugs.mediawiki.org/",
                "irc": "irc://irc.freenode.net/mediawiki",
                "wiki": "https://www.mediawiki.org/"
        },
        "require": {
                "composer/semver": "1.4.2",
                "cssjanus/cssjanus": "1.1.2",
                "ext-ctype": "*",
                "ext-iconv": "*",
                "ext-json": "*",
                "ext-mbstring": "*",
                "ext-xml": "*",
                "liuggio/statsd-php-client": "1.0.18",
                "mediawiki/at-ease": "1.1.0",
                "oojs/oojs-ui": "0.17.10",
                "oyejorge/less.php": "1.7.0.10",
                "php": ">=5.5.9",
                "psr/log": "1.0.0",
                "wikimedia/assert": "0.2.2",
                "wikimedia/base-convert": "1.0.1",
                "wikimedia/cdb": "1.4.1",
                "wikimedia/cldr-plural-rule-parser": "1.0.0",
                "wikimedia/composer-merge-plugin": "1.3.1",
                "wikimedia/html-formatter": "1.0.1",
                "wikimedia/ip-set": "1.1.0",
                "wikimedia/php-session-serializer": "1.0.4",
                "wikimedia/relpath": "1.0.3",
                "wikimedia/running-stat": "1.1.0",
                "wikimedia/scoped-callback": "1.0.0",
                "wikimedia/utfnormal": "1.1.0",
                "wikimedia/wait-condition-loop": "1.0.1",
                "wikimedia/wrappedstring": "2.2.0",
                "zordius/lightncandy": "0.23"
        },
        "require-dev": {
                "composer/spdx-licenses": "1.1.4",
                "jakub-onderka/php-parallel-lint": "0.9.2",
                "justinrainbow/json-schema": "~3.0",
                "mediawiki/mediawiki-codesniffer": "0.7.2",
                "monolog/monolog": "~1.18.2",
                "nikic/php-parser": "2.1.0",
                "nmred/kafka-php": "0.1.5",
                "phpunit/phpunit": "4.8.24",
                "wikimedia/avro": "1.7.7"
        },
        "suggest": {
                "ext-apc": "Local data and opcode cache",
                "ext-fileinfo": "Improved mime magic detection",
                "ext-intl": "ICU integration",
                "ext-wikidiff2": "Diff accelerator",
                "monolog/monolog": "Flexible debug logging system",
                "nmred/kafka-php": "Send debug log events to kafka",
                "pear/mail": "Mail sending support",
                "pear/mail_mime": "Mail sending support",
                "pear/mail_mime-decode": "Mail sending support",
                "wikimedia/avro": "Binary serialization format used with kafka"
        },
        "autoload": {
                "psr-0": {
                        "ComposerHookHandler": "includes/composer"
                }
        },
        "scripts": {
                "lint": "parallel-lint --exclude vendor",
                "phpcs": "phpcs -p -s",
                "fix": "phpcbf",
                "pre-install-cmd": "ComposerHookHandler::onPreInstall",
                "pre-update-cmd": "ComposerHookHandler::onPreUpdate",
                "test": [
                        "composer lint",
                        "composer phpcs"
                ]
        },
        "config": {
                "optimize-autoloader": true,
                "prepend-autoloader": false
        },
        "extra": {
                "merge-plugin": {
                        "include": [
                                "composer.local.json"
                        ],
                        "merge-dev": false
                }
        }
}

还有,为什么它看起来像是在试图删除mediawiki/core?

好的,我解决了问题;我要求作曲家一下子做的太多了。我首先需要在composer.local.json的“require”字段中仅使用
“mediawiki/子页面列表”:“>=1.0”
运行
composer update

然后,在运行
php maintenance/update.php
之后,我将语义媒体wiki行添加到composer.local.json,然后再运行
composer update
,最后再次运行
php maintenance/update.php