मैं autoloader के रूप में संगीतकार के autoloading साथ troube है समाधान नहीं कर सकता सिद्धांत \ ORM \ मानचित्रण \ टेबल। Unittests मैं ठेठ एनोटेशन के साथ सिद्धांत की इकाई वर्गों बनाया है के लिए:विक्रेता निर्देशिका में autoloader.php का उपयोग कर सही काम नहीं कर रहा autloading
<?php
namespace OmniSearchTest\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Picture
*
* @ORM\Table(name="picture")
* @ORM\Entity
*/
class Picture
{
और इस संस्थाओं का उपयोग करके एक नई इकाई प्रबंधक बनाया। लेकिन im संदेश हो रही है:
Doctrine\Common\Annotations\AnnotationException: [Semantical Error] The annotation "@Doctrine\ORM\Mapping\Table" in class OmniSearchTest\Entity\Picture does not exist, or could not be auto-loaded.
कुछ Unittests लिए
सबसे पहले, मैं निम्नलिखित परियोजना संरचना:
/src
/OmniSearch
SomeClass.php
/tests
/OmniSearchTest
SomeClassTest.php
/composer.json
/phpunit.xml.dist
मेरे composer.json इस तरह दिखता है:
{
/* ... */
"require": {
"php": ">=5.4",
"doctrine/orm": "2.*"
},
"require-dev": {
"phpunit/phpunit": "4.*"
},
"autoload": {
"psr-0": {
"OmniSearch\\": "src/"
}
},
"autoload-dev": {
"psr-0": {
"OmniSearchTest\\": "tests/"
}
}
}
जबकि मेरा phpunit इस तरह उत्कृष्ट दिखता है:
<?xml version="1.0" encoding="UTF-8"?>
<phpunit backupGlobals="false"
backupStaticAttributes="false"
bootstrap="vendor/autoload.php"
strict="true"
verbose="true">
<testsuites>
<testsuite name="omnisearch">
<directory>./tests/OmniSearchTest</directory>
</testsuite>
</testsuites>
</phpunit>
मैं मेरा एक और zf2 परियोजना जहां autoloading ठीक काम कर रहा था से इस परियोजना बंद cutted। इम यकीन नहीं वास्तव में क्या गलत हो गया था क्योंकि स्वत: जनरेट की autoload_namespaces.php मानचित्रण शामिल हैं:
'Doctrine\\ORM\\' => array($vendorDir . '/doctrine/orm/lib'),
whohaaaa, तो आप सही ... मैं परीक्षण निर्देशिका में bootstrap.php बनाए जाने की है और इस फाइल को – torsten
bootstrap करने के लिए phpunit.xml संशोधित और मैं बस से संगीतकार के autoload.php का उपयोग ' विक्रेता की निर्देशिका और यह काम किया (मैं bootstrap.php का भी उपयोग नहीं करता): '$ loader = requ_once __DIR __। '/ विक्रेता/autoload.php'; एनोटेशन रजिस्ट्री :: रजिस्टर लोडर (सरणी ($ लोडर, 'लोड क्लास')); ' –