Symfony2 assetic:dump write write_to path

时间:2015-06-01 20:54:17

标签: symfony assets assetic

我有资产问题的长期问题:转储。我想使用“assetic”来从不同的包中获取Javascript和CSS文件(我写过)并将它们收集到模板中的dev和prod环境中。每次我想转储新文件时,assetic:dump命令都会尝试写一个完整的破解路径。

app/console assetic:dump

  [RuntimeException]                                                                                       
  Unable to create directory /var/www/app/../web//var/www/app/../htdocs/css  

我也尝试写作:(无效)

app/console assetic:dump web
app/console assetic:dump .
app/console assetic:dump /var/www/web

我配置了像这样的资产:

assetic:
    debug:          %kernel.debug%
    use_controller: false
    read_from: "%kernel.root_dir%/../web"
    write_to: "%kernel.root_dir%/../web"
    bundles:
      - MyCodeBundle
      - NextCodeBundle
    #java: /usr/bin/java
    filters:
        lessphp:
            file: %kernel.root_dir%/../vendor/oyejorge/less.php/lessc.inc.php
            apply_to: "\.less$"
        cssrewrite: ~

我还使用 BraincraftedBootstrapBundle 在我的模板中使用Twitter Bootstrap Js / CSS。

我可以在哪里修复资产的路径:转储?

1 个答案:

答案 0 :(得分:0)

正如评论中所讨论的,从webhtdocs的符号链接似乎存在问题。不知道它是否是Symfony / Assetic或您本地安装中的错误。

但是,你甚至不需要那个符号链接。如果您需要将文档根命名为htdocs,则可以告诉Symfony使用该目录:

在应用程序的composer.json中,应该有一个条目"symfony-web-dir": "web"。将值更改为htdocs,您应该没问题。您还应该将符号链接从web移除到htdocs,以避免混淆。

我还没有对此进行过测试,但我希望所有Symfony发行包(包括Assetic)都能够尊重这一设置。如果Assetic没有,只需使用htdocs作为目标参数调用Assetic。

并且,您应该从配置中删除read_fromwrite_to参数。无论如何,您的值都是默认值,因此无需对其进行硬编码。

希望这有帮助。