我是Symfony开发的新手,我使用命令行php app\console generate:bundle
创建了我的第一个项目和第一个包。
通常,我应该可以使用这个新的bundle并访问URL hello / {name},但是当我尝试访问URL http://localhost/mylibrary-web/web/app_dev.php/hello/test/时,我收到此错误消息:
FileLoaderImportCircularReferenceException in FileLoader.php line 97: Circular reference detected in "C:\wamp\www\mylibrary-web\app/config/routing_dev.yml" ("C:\wamp\www\mylibrary-web\app/config/routing_dev.yml" > "C:\wamp\www\mylibrary-web\app/config\routing.yml" > "C:\wamp\www\mylibrary-web\app/config/routing_dev.yml").
如何解决此问题?
这是我项目的路由文件:
C:\ wamp \ www \ mylibrary-web \ app \ config \ routing_dev.yml:
_wdt:
resource: "@WebProfilerBundle/Resources/config/routing/wdt.xml"
prefix: /_wdt
_profiler:
resource: "@WebProfilerBundle/Resources/config/routing/profiler.xml"
prefix: /_profiler
_configurator:
resource: "@SensioDistributionBundle/Resources/config/routing/webconfigurator.xml"
prefix: /_configurator
_errors:
resource: "@TwigBundle/Resources/config/routing/errors.xml"
prefix: /_error
_main:
resource: routing.yml
C:\ wamp \ www \ mylibrary-web \ app \ config \ routing.yml:
my_library_library:
resource: "@MyLibraryLibraryBundle/Resources/config/routing.yml"
prefix: /
app:
resource: "@AppBundle/Controller/"
type: annotation
C:\ wamp \ www \ mylibrary-web \ src \ MyLibrary \ LibraryBundle \ Resources \ config \ routing.yml:
my_library_library_homepage:
path: /hello/{name}
defaults: { _controller: MyLibraryLibraryBundle:Default:index }
感谢您的帮助!
编辑:这里是命令行php app\console debug:router
的结果:
C:\wamp\www\mylibrary-web>php app\console debug:router
[router] Current routes
Name Method Scheme Host Path
_wdt ANY ANY ANY /_wdt/{token}
_profiler_home ANY ANY ANY /_profiler/
_profiler_search ANY ANY ANY /_profiler/search
_profiler_search_bar ANY ANY ANY /_profiler/search_bar
_profiler_purge ANY ANY ANY /_profiler/purge
_profiler_info ANY ANY ANY /_profiler/info/{about}
_profiler_phpinfo ANY ANY ANY /_profiler/phpinfo
_profiler_search_results ANY ANY ANY /_profiler/{token}/search/results
_profiler ANY ANY ANY /_profiler/{token}
_profiler_router ANY ANY ANY /_profiler/{token}/router
_profiler_exception ANY ANY ANY /_profiler/{token}/exception
_profiler_exception_css ANY ANY ANY /_profiler/{token}/exception.css
_configurator_home ANY ANY ANY /_configurator/
_configurator_step ANY ANY ANY /_configurator/step/{index}
_configurator_final ANY ANY ANY /_configurator/final
_twig_error_test ANY ANY ANY /_error/{code}.{_format}
my_library_library_homepage ANY ANY ANY /hello/{name}
homepage ANY ANY ANY /app/example
编辑2:使用命令行php app\console cache:clear
清除缓存后,我现在遇到以下错误:
ContextErrorException in classes.php line 6415: Warning: filemtime(): stat failed for C:\wamp\www\mylibrary-web\app\cache\dev/annotations/597877fc1359850fa8786ead82dcc8f6f491d628.cache.php
答案 0 :(得分:2)
我终于找到了解决方案......问题来自OPCache和以下设置:opcache.enable_file_override=1
。用opcache.enable_file_override=0
更改后一切正常:)