Доктрина Cli в Windows
У меня возникли проблемы с настройкой доктрины orm на окнах 8, php 5.4. Я установил Doctrine с помощью Composer.
Я следил за документами до буквы, но когда я запускаю какие-либо команды, php vendor/bin/doctrine orm:schema-tool:create
, например, моя командная строка просто выводит
SRC_DIR="`pwd`"
cd "`dirname "$0"`"
cd "../doctrine/orm/bin"
BIN_TARGET="`pwd`/doctrine"
cd "$SRC_DIR"
"$BIN_TARGET" "[email protected]"
Я также пробовал php vendor/bin/doctrine.php
.... но он просто распечатывает выше.
Я следовал руководству Doctrine для письма. Кто-нибудь видел это раньше, и если да, можете ли вы предложить что-нибудь?
Ответы
Ответ 1
я нашел решение
есть также папка bin в vendor/doctrine/orm/bin/вы можете использовать это, как это
php vendor/doctrine/orm/bin/doctrine orm: schema-tool: create
убедитесь, что у вас есть корневая папка, а файл cli-config.php присутствует в корневой папке.
ниже - это место, где я нашел решение
https://groups.google.com/forum/#!msg/doctrine-user/_ph183Kh-5o/_P_coljB-dcJ
это отлично работает для меня.
Ответ 2
У меня была та же проблема. Для меня работало следующее решение:
"vendor/bin/doctrine.bat" orm:schema-tool:create
Итак, в основном вы:
- используйте файл ".bat", предоставленный Doctrine, и
- заключить вызов этого файла .bat в кавычки.
Моя окружающая среда
Windows 7 Professional (x64)
PHP 5.5.12
Доктрина ORM 2.4.4
Ответ 3
Не пишите "php..." (он будет записывать содержимое файла)
Просто "vendor\bin\doctrine orm: schema-tool: create" выполните задание (от корня проекта, например: c:\php\theProject).
Далее вам понадобится "cli-config.php" в корне проекта...
Ответ 4
Вы можете установить что-то вроде git bash или просто использовать версию PHP script:
php vendor\bin\doctrine.php orm:info
Очевидно, что двоичный каталог php
должен находиться в вашей переменной среды PATH
, в противном случае это что-то вроде:
C:\path\to\php.exe vendor\bin\doctrine.php orm:info
Ответ 5
- Скопируйте doctrine.bat(расположенную по адресу vendor/bin/doctrine.bat) в корневой каталог проекта
-
Создайте файл bootstrap.php
по любому пути внутри корневого каталога проекта со следующим содержимым:
use Doctrine\ORM\Tools\Setup;
use Doctrine\ORM\EntityManager;
$paths = array("../model");
$isDevMode = false;
$dbParams = array(
'driver' => 'pdo_mysql',
'host' => 'localhost',
'user' => 'root',
'password' => '',
'dbname' => 'angular_php',
);
$config = Setup::createAnnotationMetadataConfiguration($paths, $isDevMode);
$entityManager = EntityManager::create($dbParams, $config);
-
Создайте файл cli-config.php
в корневом каталоге проекта со следующим содержимым:
<?php
use Doctrine\ORM\Tools\Console\ConsoleRunner;
// replace with file to your own project bootstrap
require_once 'path/to/file/bootstrap.php';
return ConsoleRunner::createHelperSet($entityManager);
-
Выполнить из окна командной строки (CMD):
c:\path\to\project\root\directory>doctrine --help
-
Сделано!
Ответ 6
Я обнаружил, что он не возвращал ничего из doctrine.php.bat. Оказывается, это была ошибка PHP в моем файле cli-config.php
Ответ 7
Использование Cygwin в Windows с доктриной, установленной через композитор, имело ту же проблему
разрешено:
vendor/bin/doctrine.bat orm: convert-mapping
Если у вас все еще есть проблемы, вы можете запустить cli script с помощью php, чтобы запустить консольные инструменты:
например
php cli-config.php orm: schema-tool: create
Ответ 8
Для оконной версии используйте обратную косую черту "\"
vendor\bin\doctrine orm:schema-tool:create
не косая черта "/"
vendor/bin/doctrine orm:schema-tool:create