【发布时间】:2012-03-27 22:16:40
【问题描述】:
我收到错误[问题末尾的解决方案]
Fatal error: Class 'symblog\Blogger\BlogBundle\SymblogBundle' not found in
/var/www/Symfony/app/AppKernel.php on line 20
我提出了问题How to install or integrate bundles in Symfony2,但给出的解决方案对我没有帮助,因为我已经按照那里的建议做了。我正在关注symblog.co.uk 的教程,除了我在
app/config/routing.yml
一个
*.php resource
提前致谢!
我必须在通过控制台注册捆绑包时添加该错误
The command was not able to configure everything automatically.
You must do the following changes manually.
还有说明:
- Edit the app/autoload.php file and register the bundle
namespace at the top of the registerNamespaces() call:
'symblog\Blogger\BlogBundle' => '/var/www/Symfony/blog',
我跟着。
AppKernel.php
class AppKernel extends Kernel
{
public function registerBundles()
{
$bundles = array(
//..
new symblog\Blogger\BlogBundle\SymblogBundle(),
);
/app/config/routing.yml
SymblogBundle:
resource: "@SymblogBundle/Resources/config/routing.php"
prefix: /
根据要求:/app/config/config.yml
imports:
- { resource: parameters.ini }
- { resource: security.yml }
framework:
#esi: ~
#translator: { fallback: %locale% }
secret: %secret%
charset: UTF-8
router: { resource: "%kernel.root_dir%/config/routing.yml" }
form: true
csrf_protection: true
validation: { enable_annotations: true }
templating: { engines: ['twig'] } #assets_version: SomeVersionScheme
session:
default_locale: %locale%
auto_start: true
# Twig Configuration
twig:
debug: %kernel.debug%
strict_variables: %kernel.debug%
# Assetic Configuration
assetic:
debug: %kernel.debug%
use_controller: false
# java: /usr/bin/java
filters:
cssrewrite: ~
# closure:
# jar: %kernel.root_dir%/java/compiler.jar
# yui_css:
# jar: %kernel.root_dir%/java/yuicompressor-2.4.2.jar
# Doctrine Configuration
doctrine:
dbal:
driver: %database_driver%
host: %database_host%
port: %database_port%
dbname: %database_name%
user: %database_user%
password: %database_password%
charset: UTF8
orm:
auto_generate_proxy_classes: %kernel.debug%
auto_mapping: true
# Swiftmailer Configuration
swiftmailer:
transport: %mailer_transport%
host: %mailer_host%
username: %mailer_user%
password: %mailer_password%
jms_security_extra:
secure_controllers: true
secure_all_services: false
[编辑] @Clamidity 回答说捆绑包通常位于 src/Blogger/SymBlogBundle/BloggerSymBlogBundle.php 后,解决方案非常简单
虽然使用控制台进行配置,但它需要了解捆绑包的位置,默认为 /../src,但我改为 /../blog。当然它不会起作用,Symfony 正在寻找错误的位置。我所做的是将 /blog 中的文件夹移动到 /src ,一切都很好。
【问题讨论】:
-
您的班级名称是否正确?您确定它是“symblog\Blogger\BlogBundle\SymblogBundle”而不是“Symblog\Blogger\BlogBundle\SymblogBundle”(注意大写“S”)?
-
你的包的文件路径是什么?
-
文件路径是/var/www/Symfony/blog