我正在尝试设置我的Symfony 2项目来组合和压缩大量的javascript文件。下面是我用来完成此任务的标记示例:
{% javascripts 'bundles/acmedemo/js/*' output='js/plugins.js' filter='closure' %}
<script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}
我已配置映射到yui压缩器jar。
assetic:
debug: %kernel.debug%
use_controller: false
filters:
cssrewrite: ~
closure:
jar: %kernel.root_dir%/java/yuicompressor-2.4.6.jar
yui_css:
jar: %kernel.root_dir%/java/yuicompressor-2.4.6.jar
当我尝试在浏览器中调出页面时,需要一段时间才能加载并且不包含输出文件。我试图运行app / console assetic:dump命令并收到此错误:
[RuntimeException的] 如果未指定输入文件,则默认为stdin。在这种情况下,需要'type'选项。否则,仅在输入时才需要'type'选项。并且Windows提示将其关闭。
还有其他人遇到过这个问题吗?
答案 0 :(得分:0)
你的yuicompressor文件实际位于%kernel.root_dir%/java/yuicompressor-2.4.6.jar
吗?不是%kernel.root_dir%/Resources/java/yuicompressor-2.4.6.jar
?
检查此链接,可能会有所帮助http://groups.google.com/group/symfony2/browse_thread/thread/dde8b418813bab37/1d4e42a7396f2e0f?lnk=gst&q=yui
答案 1 :(得分:0)
另外:路径必须放入:“” 配置将如下所示:
assetic:
debug: %kernel.debug%
use_controller: false
filters:
cssrewrite: ~
closure:
jar: "%kernel.root_dir%/java/yuicompressor-2.4.6.jar"
yui_css:
jar: "%kernel.root_dir%/java/yuicompressor-2.4.6.jar"
答案 2 :(得分:0)
以下不是错误,但您似乎将Yahoo的YUI压缩器配置为“闭包”。 Google Closure是一种不同的JS压缩工具。