응용 프로그램에 사용자 정의 Symfony 번들을 설치하려고합니다. 나는 다음과 같은 폴더 구조와 번들을 생성 :로컬 Symfony 번들을로드 할 때 ClassNotFoundException이 발생했습니다.
.
├── composer.json
├── composer.lock
└── src
└── Namespace
└── CoreBundle
├── Controller ...
├── CoreBundle.php
├── Entity ...
├── Helper ...
├── Repository ...
├── Resources ...
├── Services ...
└── Tests ...
나는 성공적으로 vendor
폴더에 composer install
에 의해 번들을 설치했습니다. sym-link로서 vendor/namespace/core-bundle
아래 있습니다 (로컬로로드했습니다).
는 그 후 나는 AppKernel.php
에 new Namespace\CoreBundle\CoreBundle(),
을 추가하고이 다음과 같은 오류가 발생합니다 : 나는 SYM 연결에 문제가있는 경우, vendor
폴더에 수동으로 폴더를 복사하려고
(1/1) ClassNotFoundException
Attempted to load class "CoreBundle" from namespace "Namespace\CoreBundle".
Did you forget a "use" statement for another namespace?
in AppKernel.php (line 25)
하지만, 동일한 오류가 발생합니다.
dump(ClassMapGenerator::createMap('/path/to/symfony'));
에 의해 자동로드 된 클래스를 체크 아웃하고 거기에 내 네임 스페이스를 찾지 못했습니다. 구성이 잘못되었거나 폴더 구조가 잘못 되었습니까? 더 많은 코드가 필요하면 최대한 빨리 내 질문을 업데이트하겠습니다.
업데이트 : 내 번들 composer.json
:
{
"name": "namespace/core-bundle",
"license": "proprietary",
"type": "symfony-bundle",
"autoload": {
"psr-4": {
"Namespace\\CoreBundle\\": "src/Namespace/CoreBundle"
}
},
"require": {
"doctrine/doctrine-bundle": "^1.6",
"doctrine/orm": "^2.5",
"liip/imagine-bundle": "1.9.*",
"php": ">=5.5.9",
"symfony/symfony": "3.3.*"
},
"require-dev": {
},
"extra": {
"branch-alias": {
"dev-master": "development"
}
}
}
당신은 당신의 CoreBundles을'게시 할 수 있습니다 작곡가 .json'. – ccKep
'composer.json'을 추가했습니다. – mgluesenkamp
autoload psr-4 부분에서''Namespace \\ CoreBundle \\ '': "src /"'를 말하지 않아야합니까? 편집 : nvm - psr-0을 생각하고있었습니다. 'composer dump-autoload -a'를 사용하여 오토로더를 수동으로 덤프 한 후에 작동합니까? – ccKep