Erro de instalação do Magento2 - Erro de análise:erro de sintaxe, T_STRING inesperado, esperando T_CONSTANT_ENCAPSED_STRING ou '(' [fechado]
-
12-12-2019 - |
Pergunta
Tenho tentado instalar a estrutura Magento 2 antes do próximo webinar, mas estou recebendo erros.
Alguém conseguiu instalar via CLI ou UI da web?
Aqui está o erro:
Parse error: syntax error, unexpected T_STRING, expecting T_CONSTANT_ENCAPSED_STRING or '(' in /home/magento2/dev/shell/run_data_fixtures.php on line 25'
E aqui está a linha 25
use Magento\Framework\App\State as AppState;
Baixei diretamente do repositório GitHub e ainda não fiz nenhuma alteração no código!
Solução
Parece que você tem 2 versões diferentes do php.
5.4.17 para "modo navegador" e 5.2.17
para linha de comando.
Ao executar o processo de instalação, o arquivo dev/shell/run_data_fixtures.php
é chamado via linha de comando.Veja o método Magento\Setup\Model\Installer::installDataFixtures
.
PHP 5.2
não pode usar espaços para nome.
Namespaces estão disponíveis a partir de 5.3
.
ENTÃO você precisa atualizar sua versão CLI do php para 5.4
.Esta é a versão mínima suportada para magento 2.
Outras dicas
Tive que executar o seguinte na CLI dentro da pasta de configuração:
cd setup
- Execute o seguinte:
php55 -f index.php install --cleanup_database --db_host=localhost --db_name=magento_2 --db_user="username" --db_pass="password" --backend_frontname=admin --base_url=http://domainname/ --language=en_US --timezone=Europe/London --currency=GBP --admin_lastname=LastName --admin_firstname=FirstName --admin_email=email@email.co.uk --admin_username=admin --admin_password=admin_password --use_secure=0