не удалось заставить работать выпечку с cakePhp 3.2

Я пытаюсь создать новый локальный проект с cakephp 3.2, следуя cakephp doc, на локальном сервере wamp. Я использовал композитор для его установки.

После установки все выглядит нормально: я настраиваю доступ к базе данных на app.php, и домашняя страница по умолчанию cakephp подтверждает, что все в порядке с конфигурацией (версия PHP и расширения в порядке / права на запись в порядке / подключение к базе данных в порядке)

Но когда я пытаюсь использовать команды запекания (из корневого каталога моего проекта), у меня возникает ошибка:

$ bin/cake bake
Could not open input file: /cygdrive/c/wamp64/www/cemafor/bin/cake.php

Однако файл c/wamp64/www/cemafor/bin/cake.php существует!

Я пытаюсь использовать команду «./bin/cake испечь» (согласно cakephp испечь документ рекомендация), все та же ошибка.

Попробуйте также удалить и переустановить проект, без изменений.

Я видел, что установленная версия запекания была 1.2.1 (см. результат команды установки). Я просмотрел файл /composer.json и увидел это:

"require-dev": {
    "psy/psysh": "@stable",
    "cakephp/debug_kit": "~3.2",
    "cakephp/bake": "~1.1"
},

Поэтому я пытаюсь изменить значение версии для версии cakephp/bake следующим образом:

"cakephp/bake": "~1.2"

Но ничего не меняет...

Я пытаюсь установить версию 1.0 в соответствии с bake doc, но не работает.

И не могу найти ни одного человека с такой же проблемой... чувствуешь себя одиноким в этом мире с тупым жуком ^^

Большое спасибо за помощь!


Для информации, вот результат команды установки:

$ composer create-project --prefer-dist cakephp/app cemafor
Installing cakephp/app (3.2.1)
  - Installing cakephp/app (3.2.1)
    Loading from cache

Created project in cemafor
Loading composer repositories with package information
Installing dependencies (including require-dev)
  - Installing aura/installer-default (1.0.0)
    Loading from cache

  - Installing cakephp/plugin-installer (0.0.12)
    Loading from cache

  - Installing psr/log (1.0.0)
    Loading from cache

  - Installing mobiledetect/mobiledetectlib (2.8.19)
    Loading from cache

  - Installing aura/intl (1.1.1)
    Loading from cache

  - Installing cakephp/chronos (0.4.7)
    Loading from cache

  - Installing cakephp/cakephp (3.2.3)
    Loading from cache

  - Installing symfony/yaml (v3.0.3)
    Loading from cache

  - Installing symfony/filesystem (v3.0.3)
    Loading from cache

  - Installing symfony/config (v3.0.3)
    Loading from cache

  - Installing symfony/polyfill-mbstring (v1.1.0)
    Loading from cache

  - Installing symfony/console (v3.0.3)
    Loading from cache

  - Installing robmorgan/phinx (v0.5.1)
    Loading from cache

  - Installing cakephp/migrations (1.5.6)
    Loading from cache

  - Installing jakub-onderka/php-console-color (0.1)
    Loading from cache

  - Installing jakub-onderka/php-console-highlighter (v0.3.2)
    Loading from cache

  - Installing dnoegel/php-xdg-base-dir (0.1)
    Loading from cache

  - Installing nikic/php-parser (v2.0.1)
    Loading from cache

  - Installing symfony/var-dumper (v3.0.3)
    Loading from cache

  - Installing psy/psysh (v0.7.1)
    Loading from cache

  - Installing jdorn/sql-formatter (v1.2.17)
    Loading from cache

  - Installing cakephp/debug_kit (3.2.6)
    Loading from cache

  - Installing cakephp/bake (1.2.1)
    Loading from cache

symfony/console suggests installing symfony/event-dispatcher ()
symfony/console suggests installing symfony/process ()
symfony/var-dumper suggests installing ext-symfony_debug ()
psy/psysh suggests installing ext-pcntl (Enabling the PCNTL extension makes PsySH a lot happier :))
psy/psysh suggests installing ext-posix (If you have PCNTL, you'll want the POSIX extension as well.)
psy/psysh suggests installing ext-readline (Enables support for arrow-key history navigation, and showing and manipulating command history.)
psy/psysh suggests installing ext-pdo-sqlite (The doc command requires SQLite to work.)
cakephp/debug_kit suggests installing ext-sqlite (DebugKit needs to store panel data in a database. SQLite is simple and easy to use.)
Writing lock file
Generating autoload files
> Cake\Composer\Installer\PluginInstaller::postAutoloadDump
> App\Console\Installer::postInstall
Created `config/app.php` file
Set Folder Permissions ? (Default to Y) [Y,n]? Y
Updated Security.salt value in config/app.php

А вот мое содержимое composer.json:

{
    "name": "cakephp/app",
    "description": "CakePHP skeleton app",
    "homepage": "http://cakephp.org",
    "type": "project",
    "license": "MIT",
    "require": {
        "php": ">=5.5.9",
        "cakephp/cakephp": "~3.2",
        "mobiledetect/mobiledetectlib": "2.*",
        "cakephp/migrations": "~1.0",
        "cakephp/plugin-installer": "*"
    },
    "require-dev": {
        "psy/psysh": "@stable",
        "cakephp/debug_kit": "~3.2",
        "cakephp/bake": "^1.2"
    },
    "suggest": {
        "phpunit/phpunit": "Allows automated tests to be run without system-wide install.",
        "cakephp/cakephp-codesniffer": "Allows to check the code against the coding standards used in CakePHP."
    },
    "autoload": {
        "psr-4": {
            "App\\": "src"
        }
    },
    "autoload-dev": {
        "psr-4": {
            "App\\Test\\": "tests",
            "Cake\\Test\\": "./vendor/cakephp/cakephp/tests"
        }
    },
    "scripts": {
        "post-install-cmd": "App\\Console\\Installer::postInstall",
        "post-autoload-dump": "Cake\\Composer\\Installer\\PluginInstaller::postAutoloadDump"
    },
    "minimum-stability": "stable",
    "prefer-stable": true
}

person developpeuse web    schedule 01.03.2016    source источник
comment
Разрешения? Убедитесь, что используемому вами пользователю разрешено выполнять файлы. Я без проблем использую запекание в Windows с помощью Powershell, а не bash через cygwin.   -  person floriank    schedule 01.03.2016
comment
Разрешения, упомянутые @burzum, являются одной из возможностей. Другой заключается в том, что система не имеет правильной информации обо всех своих путях. Какие существуют соответствующие пути и в каких переменных среды они ожидаются? Действительно ли bake смотрит не туда?   -  person peter_the_oak    schedule 01.03.2016
comment
Как было предложено Burzum, я пытаюсь использовать команду Windows Invit, и на этот раз она работает... Это означает, что это проблема с разрешениями? Но я бы хотел, чтобы он работал с cygwin, потому что я действительно предпочитаю его использовать. Что мне делать, чтобы решить эти проблемы с разрешениями? Спасибо !   -  person developpeuse web    schedule 01.03.2016
comment
tiv.net/2014/01/could -not-open-input-file.html возможно... не уверен, что это все еще применимо.   -  person ndm    schedule 01.03.2016
comment
Спасибо за ответ ! Я просмотрел ссылку, предоставленную ndm, но, к сожалению, кажется, что я недостаточно компетентен, чтобы иметь дело с данными решениями... (например, не знаю, как это сделать: создайте псевдоним composer='composer. bat' в вашем профиле bash или bashrc или что-то еще); и композитор хорошо работает на cygwin для меня. Я собираюсь провести другие поиски. Я напишу здесь, если найду решение, которое смогу применить.   -  person developpeuse web    schedule 01.03.2016


Ответы (1)


Наконец добиться успеха! ... яростно помогает компенсировать некомпетентность ^^

Я выполняю следующие шаги: https://stackoverflow.com/a/14904607/2614077.

На шаге 4, когда я редактирую файл /bin/php (в моем случае в notepadd++), мне нужно выполнить 2 небольшие операции, чтобы заставить его работать:

  • преобразовать документ в формат UNIX
  • закодировать его в UTF8 (без BOM)

На этот раз все работает нормально.

Рад, что наконец смог решить эту проблему. Большое спасибо.

person developpeuse web    schedule 01.03.2016
comment
Большое спасибо, что поделились с нами своими знаниями. - person peter_the_oak; 08.03.2016