未捕获的TypeError:Magento \ InventoryComposerInstaller的返回值必须是Magento \ InventoryComposerInstaller \ void的实例,未返回任何值

时间:2019-02-25 13:46:37

标签: php magento composer-php magento2

我正在尝试通过Composer在我的Web服务器上安装Magento 2。在必须将以下内容添加到composer.json文件中之后,才能使所有工作都在使用php版本的情况下进行:

"config": {
    "platform": {
        "php": "7.2.14"
    }
} 

然后我开始composer install时发生事情:

Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 392 installs, 0 updates, 0 removals
  - Installing magento/magento-composer-installer (0.1.13): Downloading (100%)
  - Installing symfony/polyfill-ctype (v1.10.0): Downloading (100%)
  - Installing symfony/polyfill-mbstring (v1.10.0): Downloading (100%)
  - Installing zendframework/zend-stdlib (2.7.7): Downloading (100%)
  - Installing zendframework/zend-hydrator (1.1.0): Downloading (100%)
  - Installing psr/container (1.0.0): Downloading (100%)
  - Installing container-interop/container-interop (1.2.0): Downloading (100%)
  - Installing zendframework/zend-validator (2.11.1): Downloading (100%)
  - Installing zendframework/zend-escaper (2.6.0): Downloading (100%)
  - Installing zendframework/zend-uri (2.6.1): Downloading (100%)
  - Installing psr/http-message (1.0.1): Downloading (100%)
  - Installing zendframework/zend-diactoros (1.8.6): Downloading (100%)
  - Installing zendframework/zend-loader (2.6.0): Downloading (100%)
  - Installing zendframework/zend-http (2.8.4): Downloading (100%)
  - Installing zendframework/zend-psr7bridge (0.2.2): Downloading (100%)
  - Installing zendframework/zend-servicemanager (2.7.11): Downloading (100%)
  - Installing zendframework/zend-filter (2.9.1): Downloading (100%)
  - Installing zendframework/zend-inputfilter (2.10.0): Downloading (100%)
  - Installing zendframework/zend-form (2.13.0): Downloading (100%)
  - Installing zendframework/zend-eventmanager (2.6.4): Downloading (100%)
  - Installing zendframework/zend-code (3.3.1): Downloading (100%)
  - Installing zendframework/zend-console (2.7.0): Downloading (100%)
  - Installing zendframework/zend-mvc (2.7.15): Downloading (100%)
  - Installing zendframework/zend-math (2.7.1): Downloading (100%)
  - Installing zendframework/zend-crypt (2.6.0): Downloading (100%)
  - Installing tedivm/jshrink (v1.3.1): Downloading (100%)
  - Installing symfony/process (v4.1.11): Downloading (100%)
  - Installing symfony/console (v4.1.11): Downloading (100%)
  - Installing oyejorge/less.php (v1.7.0.14): Downloading (100%)
  - Installing psr/log (1.1.0): Downloading (100%)
  - Installing monolog/monolog (1.24.0): Downloading (100%)
  - Installing magento/zendframework1 (1.14.1): Downloading (100%)
  - Installing symfony/finder (v4.2.3): Downloading (100%)
  - Installing symfony/filesystem (v4.2.3): Downloading (100%)
  - Installing seld/phar-utils (1.0.1): Downloading (100%)
  - Installing seld/jsonlint (1.7.1): Downloading (100%)
  - Installing justinrainbow/json-schema (5.2.8): Downloading (100%)
  - Installing composer/xdebug-handler (1.3.2): Downloading (100%)
  - Installing composer/spdx-licenses (1.5.0): Downloading (100%)
  - Installing composer/semver (1.4.2): Downloading (100%)
  - Installing composer/ca-bundle (1.1.4): Downloading (100%)
  - Installing composer/composer (1.8.4): Downloading (100%)
  - Installing colinmollenhour/credis (1.10.0): Downloading (100%)
  - Installing colinmollenhour/php-redis-session-abstract (v1.4.0): Downloading (100%)
  - Installing magento/framework (102.0.0): Downloading (100%)
  - Installing magento/inventory-composer-installer (1.0.3): Downloading (100%)  
PHP Fatal error:  Uncaught TypeError: Return value of Magento\InventoryComposerInstaller\Plugin::initModuleDeployment() must be an instance of Magento\InventoryComposerInstaller\void, none returned in /var/www/vhosts/blah/project-community-edition/vendor/magento/inventory-composer-installer/src/Plugin.php:69
Stack trace:
#0 /var/www/vhosts/blah/project-community-edition/vendor/magento/inventory-composer-installer/src/Plugin.php(88): Magento\InventoryComposerInstaller\Plugin->initModuleDeployment()
#1 /var/www/vhosts/blah/project-community-edition/vendor/magento/inventory-composer-installer/src/Plugin.php(82): Magento\InventoryComposerInstaller\Plugin->getModuleDeployment()
#2 [internal function]: Magento\InventoryComposerInstaller\Plugin->onPackageChange(Object(Composer\Installer\PackageEvent))
#3 phar:///usr/lib/plesk-9.0/composer.phar/src/Composer/EventDispatcher/EventDispatcher.php(176): call_user_func(Array, Object(Composer\Installer\PackageEvent))
#4 phar:///usr/lib/plesk-9.0/comp in /var/www/vhosts/blah/project-community-edition/vendor/magento/inventory-composer-installer/src/Plugin.php on line 69

Fatal error: Uncaught TypeError: Return value of Magento\InventoryComposerInstaller\Plugin::initModuleDeployment() must be an instance of Magento\InventoryComposerInstaller\void, none returned in /var/www/vhosts/blah/project-community-edition/vendor/magento/inventory-composer-installer/src/Plugin.php:69
Stack trace:
#0 /var/www/vhosts/blah/project-community-edition/vendor/magento/inventory-composer-installer/src/Plugin.php(88): Magento\InventoryComposerInstaller\Plugin->initModuleDeployment()
#1 /var/www/vhosts/blah/project-community-edition/vendor/magento/inventory-composer-installer/src/Plugin.php(82): Magento\InventoryComposerInstaller\Plugin->getModuleDeployment()
#2 [internal function]: Magento\InventoryComposerInstaller\Plugin->onPackageChange(Object(Composer\Installer\PackageEvent))
#3 phar:///usr/lib/plesk-9.0/composer.phar/src/Composer/EventDispatcher/EventDispatcher.php(176): call_user_func(Array, Object(Composer\Installer\PackageEvent))
#4 phar:///usr/lib/plesk-9.0/comp in /var/www/vhosts/blah/project-community-edition/vendor/magento/inventory-composer-installer/src/Plugin.php on line 69

对于与Magento相关的问题,我没有运气寻找帮助。用户要求提供有关Composer版本和php版本等更多信息的一些与Composer链接但与Magento无关的类似问题。以下是这些线程中要求的信息:

$ composer --version
Composer version 1.9-dev (blah) 2019-02-08 16:02:33

$ composer show composer/composer | grep versions
versions : * 1.8.4

$ composer depends composer/composer
magento/framework  102.0.0  requires  composer/composer (^1.6)

$ php -version
PHP 7.0.32-0ubuntu0.16.04.1 (cli) ( NTS )

Plesk中的PHP版本:7.2.14

phpinfo()中列出的PHP版本:7.2.14

此刻,我对如何处理此问题感到困惑。任何建议或指示,将不胜感激。这是我第一次通过Composer安装,并且由于缺乏对linux / bash等的了解/经验,我通常会尽量避免使用命令行内容。

预先感谢

1 个答案:

答案 0 :(得分:1)

此错误可以归结为 PHP兼容性

  • 对于Magento 2.3PHP 7.1

  • 对于Magento 2.2PHP 7.1PHP 7.0

  • 对于Magento 2.1PHP 7.1PHP 7.0PHP 5.6

  • 对于Magento 2.0PHP 7.0PHP 5.6PHP 5.5

检查您的PHP版本,并在需要时升级或降级PHP。

如果没有良好版本的PHP,您将永远无法使Magento 2正常工作