Spring SpEL 在解析带有@Value注释的列表时不能使用空格字符



我正在尝试使用SPeL解析字符串列表列表Param是使用命令行参数而不是.properties文件指定的当我不在字符串文本中使用空格字符时,一切都很好,但当我使用空格字符的时候,我会得到一个解析异常。

编辑:我使用的是Spring Boot 2.2.9.RELASE

带有@Value注释的列表:

@Value("#{${param}}")
private List<List<String>> param;

属性被指定为命令行参数,但不起作用:

--param={{'With Space','b'},{'x','y'}}

异常结果:

Caused by: org.springframework.expression.ParseException: Expression [#{{{'With}] @4: Found non terminating string literal starting at position 4

这确实有效:

--param={{'WithoutSpace','b'},{'x','y'}}

有没有一种方法可以用包含空格字符的String元素解析这样的List?

命令行参数应为:

--param="{{'With Space','b'},{'x','y'}}"

以便正确解析!请注意,在=后面和末尾的--param值周围有引号字符"

最新更新