Мы пытаемся распечатать строку в формате json как значение в файле yaml без кавычек. Мы используем шаблонизатор Freemarker версии 2.3.26 и выводим вывод в файлы yaml с помощью библиотеки org.yaml.snakeyaml
.
Мы либо видим json, преобразованный в yaml, либо json, окруженный одинарными кавычками; хотя https://try.freemarker.apache.org/, кажется, показывает, что это возможно.
Ниже приведено несколько примеров с фрагментом кода и соответствующим выводом:
<#assign a = '{"key": "val"}'>
setting_a: ${a?string}
печать (без кавычек)
string_a:
key: val
<#assign a = '{"key": "val"}'>
setting_a: ${a?js_string}
печатает (с кавычками и экранированием)
setting_a:
\"key\": \"val\"
<#assign a = "{"key": "val"}">
setting_a: ${a?json_string}
отпечатки (с кавычками и экранированием)
setting_a:
\"key\": \"val\"
<#assign a = "{\"key\": \"val\"}">
setting_a: ${a?string}
печать (без кавычек)
setting_a:
key: val
<#assign a = "{"key": "val"}">
setting_a: ${a?js_string}
отпечатки (с кавычками и экранированием)
setting_a:
\"key\": \"val\"
<#assign a = "{"key": "val"}">
setting_a: ${a?json_string}
отпечатков (с кавычками и экранированием
setting_a:
\"key\": \"val\"
То, что мы ожидаем, это вывод yaml
файл
setting_a: {"key": "val"}.
- Возможно ли это?
- Если это так, нужно ли для этого выбрать конкретный
org.yaml.snakeyaml.DumperOptions
?
- Если это невозможно, мне интересно, выбираю ли я неправильные опции для https://try.freemarker.apache.org/