我正试图通过遵循这个tutorial来学习教义。这是来自学说网站的官方“入门”。
在生成db-schema时,教程建议使用随doctrine一起提供的命令行工具。该命令如下:
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" "$@"
没有任何反应。请注意,我使用composer来安装学说,我的composer.json
看起来像这样:
{
"require": {
"doctrine/orm": "2.4.*",
"symfony/yaml": "2.*"
},
"autoload": {
"psr-0": {"": "src/"}
}
}
然后我尝试了以下命令(注意不同的路径):
php vendor/doctrine/orm/bin/doctrine orm:schema-tool:create
它给了我一个未找到的错误:
Fatal error: Class 'PHPUnit_Framework_TestCase' not found in C:\xampp\htdocs\my-project\vendor\doctrine\annotations\tests\Doctrine\Tests\Common\Annotations\AbstractReaderTest.php on line 13
所以...我将phpunit依赖项添加到我的composer.json
文件中:
{
"require": {
"doctrine/orm": "2.4.*",
"symfony/yaml": "2.*"
},
"require-dev": {
"phpunit/phpunit": "4.2.*"
},
"autoload": {
"psr-0": {"": "src/"}
}
}
并重新运行命令:
php vendor/doctrine/orm/bin/doctrine orm:schema-tool:create
现在我得到了一个不能找到的错误,我无法修复错误:
Fatal error: Class 'Doctrine\Tests\Common\Annotations\Fixtures\AnnotationTargetAll' not found in C:\xampp\htdocs\my-project\vendor\doctrine\annotations\tests\Doctrine\Tests\Common\Annotations\DocParserTest.php on line 1312
我很确定作曲家应该自动神奇地处理所有这些混乱,但事情并没有发生。
我的最终目标是能够按照我问题开头提到的教程开始学习ORM原则。
任何人都可以帮助我让schema-tool create
命令工作吗?
非常感谢任何帮助和阅读这篇长篇文章!
更新
我想指出我试图用windows cmd(控制台)和git bash运行这些命令 - 结果相同。无论如何,请确认我应该使用git bash发出这些命令,谢谢