2017-01-05 13 views
1

У меня возникли проблемы при попытке обновить мое приложение CakePHP 2 до CakePHP 3.Обновление CakePHP 2 приложения -> CakePHP 3 приложение, `Не может объявить приложение, потому что имя уже use`

Я использую PHP 7,1 & Ubuntu 16 и Nginx/1.10.0 (Ubuntu)

Я получаю следующее сообщение об ошибке ...

Fatal error: Cannot declare class lib\Cake\Core\App because the name is already in use in /usr/share/nginx/html/web/lib/Cake/Core/App.php on line 70 

Я выполняю эту страницу: https://github.com/cakephp/upgrade

Я первый с помощью этих команд:

bin/cake upgrade locations [path] 
bin/cake upgrade namespaces [path] 
bin/cake upgrade app_uses [path] 

bin/cake upgrade rename_classes [path] 
bin/cake upgrade rename_collections [path] 
bin/cake upgrade method_names [path] 
bin/cake upgrade method_signatures [path] 
bin/cake upgrade fixtures [path] 
bin/cake upgrade tests [path] 
bin/cake upgrade i18n [path] 
bin/cake upgrade skeleton [path] 
bin/cake upgrade prefixed_templates [path] 

Некоторые подробности:

Мой PHP версия (выход php -v) является:

PHP 7.1.0-5+deb.sury.org~xenial+1 (cli) (NTS) 
Copyright (c) 1997-2016 The PHP Group 
Zend Engine v3.1.0-dev, Copyright (c) 1998-2016 Zend Technologies 
    with Zend OPcache v7.1.0-5+deb.sury.org~xenial+1, Copyright (c) 1999-2016, by Zend Technologies 
    with Xdebug v2.5.0, Copyright (c) 2002-2016, by Derick Rethans 

и мой убунту версия (выход lsb_release -a) это:

No LSB modules are available. 
Distributor ID: Ubuntu 
Description: Ubuntu 16.04.1 LTS 
Release: 16.04 
Codename: xenial 

ответ

0

Похоже, что вы можете га ve CakePHP на include_path или иным образом установили плагин обновления таким образом, чтобы он не был composer install внутри плагина обновления. Если вы не клонировали инструмент обновления в /usr/share/nginx/html/web/.

+0

Плагин обновления находится внутри/usr/share/nginx/html/upgrade, и у меня есть компонент composer.phar, установленный в/bin, и я использовал это для установки инструмента обновления изнутри/usr/share/nginx/html/обновить, я побежал обновить все 'бен/торт [заполнить пробел] ../ web' команды – user904542

+0

у меня есть резервная копия старой версии CakePHP 2 мое приложение – user904542

+0

Ну я использовал get_include_path найти my php include path, и нашел его в/usr/share/path, а затем сделал ls и нашел это: 7.0 7.1 Архив данных Cake Console docs OS PEAR pearcmd.php PEAR.php peclcmd.php PHP Structures System.php XML running 'sudo find -name Cake' from эта папка дала мне это: ./Cake ./data/CakePHP/Cake – user904542

 Смежные вопросы

  • Нет связанных вопросов^_^