gpt4 book ai didi

spring-el - Spring EL - 调用静态接口(interface)方法

转载 作者:行者123 更新时间:2023-12-03 06:59:28 29 4
gpt4 key购买 nike

有没有办法在 SpEL 中调用静态接口(interface)方法?例如:

T(java.util.stream.IntStream).of(new Integer[]{1,2,3}).sum()

当我运行此命令时,出现此错误:问题定位类型类 java.lang.Class 的方法

最佳答案

您缺少向我们展示更多堆栈跟踪:

Caused by: org.springframework.expression.spel.SpelEvaluationException: EL1033E: Method call of 'of' is ambiguous, supported type conversions allow multiple variants to match
at org.springframework.expression.spel.support.ReflectiveMethodResolver.resolve(ReflectiveMethodResolver.java:211)

仅仅因为IntStream中有多个of()方法,它无法在运行时通过反射解析出正确的方法。

这对我有用:

ExpressionParser parser = new SpelExpressionParser();
Expression expression = parser.parseExpression("T(java.util.stream.IntStream).of(1,2,3).sum()");

assertThat(expression.getValue()).isEqualTo(6);

关于spring-el - Spring EL - 调用静态接口(interface)方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49998401/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com