Assetic 找不到文件
Posted
技术标签:
【中文标题】Assetic 找不到文件【英文标题】:Assetic unable to find file 【发布时间】:2012-05-09 18:07:12 【问题描述】:我正在尝试在 twig 模板中链接一个 css 文件(位于包中):
% stylesheets
'@AcmeFooBundle/Resources/public/css/bootstrap.min.css'
%
<link href=" asset_url " rel="stylesheet"/>
% endstylesheets %
我得到的第一条错误信息是:
您必须将 AcmeFooBundle 添加到 assets.bundle 配置中...
这是配置:
# Assetic Configuration
assetic:
debug: %kernel.debug%
use_controller: false
bundles: []
#java: /usr/bin/java
filters:
cs-s-rewrite: ~
#closure:
# jar: %kernel.root_dir%/Resources/java/compiler.jar
#yui_css:
# jar: %kernel.root_dir%/Resources/java/yuicompressor-2.4.7.jar
然后我尝试在 bundles 指令中添加 AcmeFooBundle,但随后出现错误:
找不到文件....
我不明白我在这里做错了什么......
在控制台中转储资产配置的默认配置(使用 php app/console config:dump-referenceassetic )我可以在 bundles 中看到 AcmeFooBundle 捆绑包指令...
【问题讨论】:
【参考方案1】:除非您需要将 Assetic 的某些捆绑包列入白名单,否则只需从配置中删除 bundles
选项即可。
【讨论】:
感谢您的回复。我试图删除 bundles 指令,但仍然收到“无法找到...”错误 将 AcmeFooBundle 添加到配置中: bundles: [AcmeFooBundle] (但不要问我为什么)【参考方案2】:我遇到了同样的问题,elnur 的建议奏效了。这是我的资产配置供您参考
# Assetic Configuration
assetic:
debug: %kernel.debug%
use_controller: false
#bundles: [ ]
#java: /usr/bin/java
filters:
cs-s-rewrite: ~
#closure:
# jar: %kernel.root_dir%/Resources/java/compiler.jar
yui_css:
jar: "%kernel.root_dir%/Resources/java/yuicompressor-2.4.7.jar"
yui_js:
jar: "%kernel.root_dir%/Resources/java/yuicompressor-2.4.7.jar"
【讨论】:
【参考方案3】:以下对我有用:
创建捆绑包,例如:
php app/console generate:bundle --namespace=Acme/Bundle/BlogBundle --no-interaction
见:Generating a New Bundle Skeleton
添加 Assetic 导入如下:
% javascripts '@AcmeBlogBundle/Resources/public/js/*' %
<script type="text/javascript" src=" asset_url "></script>
% endjavascripts %
将 Bundle 添加到资产配置中:
# Assetic Configuration
assetic:
...
bundles: ['AcmeBlogBundle']
...
【讨论】:
以上是关于Assetic 找不到文件的主要内容,如果未能解决你的问题,请参考以下文章