我正在尝试通过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等的了解/经验,我通常会尽量避免使用命令行内容。
预先感谢
答案 0 :(得分:1)
此错误可以归结为 PHP兼容性:
对于Magento 2.3
:PHP 7.1
对于Magento 2.2
:PHP 7.1
或PHP 7.0
对于Magento 2.1
:PHP 7.1
,PHP 7.0
或PHP 5.6
对于Magento 2.0
:PHP 7.0
,PHP 5.6
或PHP 5.5
检查您的PHP版本,并在需要时升级或降级PHP。
如果没有良好版本的PHP,您将永远无法使Magento 2正常工作