加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – Symfony2 – 捆绑包的致命错误

发布时间:2020-12-13 18:15:35 所属栏目:PHP教程 来源:网络整理
导读:我有错误[问题末尾的解决方案] Fatal error: Class 'symblogBloggerBlogBundleSymblogBundle' not found in/var/www/Symfony/app/AppKernel.php on line 20 我创建了问题How to install or integrate bundles in Symfony2,但给出的解决方案对我没有帮助,
我有错误[问题末尾的解决方案]
Fatal error: Class 'symblogBloggerBlogBundleSymblogBundle' 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:
'symblogBloggerBlogBundle' => '/var/www/Symfony/blog',

我跟着他.

AppKernel.php

class AppKernel extends Kernel
{
public function registerBundles()
{
    $bundles = array(
        //..
        new symblogBloggerBlogBundleSymblogBundle(),);

/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 / SymBlogBu??ndle / BloggerSymBlogBu??ndle.php

虽然使用控制台进行了配置,但它关于捆绑软件的位置,默认为/../src,但我更改为/../blog.当然它不起作用,Symfony正在寻找错误的位置.我所做的是将/ blog中的文件夹移动到/ src,一切都很顺利.

它有一些可能的东西.我会掩盖我能想到的任何事情.

>通常捆绑包放在src文件夹中.所以你的包的路径应该是这样的.

src/Blogger/SymBlogBundle/BloggerSymBlogBundle.php

(请注意,包名称遵循文件名约定)
> BloggerSymBlogBu??ndle.php内部确保您具有类似于以下内容的内容:

<?php

namespace BloggerSymBlogBundle;

use SymfonyComponentHttpKernelBundleBundle;

class BloggerSymBlogBundle extends Bundle
{ 
}

(请注意,此处也遵循相同的名称约定)
>在autoload.php中,应注册的命名空间是捆绑包名称/路径的“Blogger”部分.这是因为捆绑包本身位于Blogger文件夹中:

'Blogger' => __DIR__.'/../src',

(请注意,列出的文件夹是Blogger文件夹的父文件夹)
>现在在AppKernel.php中根据您设置和注册的命名空间注册捆绑包:

new BloggerSymBlogBundleBloggerSymBlogBundle(),

*注意 – 您的资源和对此捆绑包的引用具有上述配置

BloggerSymBlogBundle

所以你的php路由将通过使用:

@BloggerSymBlogBundle/Resources/config/routing.php

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读