2015-12-04 4 views
2

Поскольку я мигрировал в Symfony3 (от Symfony 2.8), у меня есть исключение, когда config.yml является разбор:

Symfony\Component\DependencyInjection\Exception\InvalidArgumentException] 
The file "/home/public_html/app/config/config.yml" 
does not contain valid YAML. 

[Symfony\Component\Yaml\Exception\ParseException] 
Unable to parse at line 60 (near "apply_to: "\.css$""). 


# Assetic Configuration 
assetic: 
    debug:   "%kernel.debug%" 
    use_controller: false 
    bundles:  ["MyBundle"] 
    java: /usr/bin/java 
    ruby: /usr/bin/ruby 
    filters: 
     cssrewrite: ~ 
     sass: 
      bin: /usr/bin/sass 
     compass: 
      bin: /usr/bin/compass 
     yui_css: 
      jar: "%kernel.root_dir%/Resources/java/yuicompressor-2.4.8.jar" 
      apply_to: "\.css$" 
     yui_js: 
      jar: "%kernel.root_dir%/Resources/java/yuicompressor-2.4.8.jar" 
      apply_to: "\.js$" 

Во время моего перехода на SF2.8 до SF3.0 этот код не изменился. Документация не изменилась тоже: http://symfony.com/doc/current/cookbook/assetic/apply_to_option.html

Если я заменяю:

apply_to: "\.css$" 

By:

apply_to: ".css$" 

Я не ошибка, но это не хороший результат.

Знаете ли вы, почему я не смог написать apply_to: ".css $" в качестве документа?

Извините за мой плохой английский ...

+1

Реализация YAML в настоящее время соответствует стандартам YAML немного более внимательно. http://symfony.com/doc/current/components/yaml/yaml_format.html#strings. Поэтому замените свои двойные кавычки одиночными кавычками, и все должно быть хорошо. Или используйте \\. Имейте в виду, что S3 не обратно совместим с S2, поэтому вы, вероятно, столкнетесь с кучей этих проблем при попытке обновить существующие проекты. – Cerad

+0

Спасибо, apply_to: "\\. Css $" это нормально :) – JohnDD

+0

@Cerad Вы должны отправить свой комментарий в качестве ответа, чтобы JohnDD мог его принять и отметить этот вопрос. –

ответ

0

Реализация YAML S3 теперь следует стандартам YAML немного более внимательно. http://symfony.com/doc/current/components/yaml/yaml_format.html#strings

Так что замените свои двойные кавычки одиночными кавычками, и все должно быть хорошо. Или используйте \. Имейте в виду, что S3 не обратно совместим с S2, поэтому вы, вероятно, столкнетесь с кучей этих проблем при попытке обновить существующие проекты.

И обязательно процитировать любые @service_ids