gpt4 book ai didi

java - StringTemplate 没有找到 getter

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:30:17 29 4
gpt4 key购买 nike

我正在使用 ST-4.0.7.jar,我的模板如下所示:

backtrack_result(btresult) ::=<<
<backtrack-result>
<pattern id="$btresult.pattern.id$">$btresult.pattern.description$</pattern>
<file>$btresult.file.file.path$</file>
<line>$btresult.codeline.lineNr$</line>
<method>$btresult.codeline.method.name$</method>
</backtrack-result>
>>

然而,当我查看我的输出文件时,我得到了

<method></method>

在 BTResult 中:

public CodeLineInterface getCodeline() {
return cl;
}

在代码行中:

public MethodInterface getMethod() {
return method;
}

在方法中:

public String getName() {
return name;
}

我在代码行对象中为 getMethod 方法设置了一个断点,但它从未被调用过。所以我得出结论,不知何故 stringtemplate 在解析正确的 getter 时遇到了问题。

我添加了一个 STErrorListener,发现 ST 抛出了以下错误:

STReportGenerator  - context [/report /backtrack_results /backtrack_result] 5:19 no such property or can't access: ju.no.need.toknow.BTResult.method
Caused by: org.stringtemplate.v4.misc.STNoSuchPropertyException: no such property: ju.no.need.toknow.BTResult.method
at org.stringtemplate.v4.misc.ObjectModelAdaptor.throwNoSuchProperty(ObjectModelAdaptor.java:106)
at org.stringtemplate.v4.misc.ObjectModelAdaptor.lookupMethod(ObjectModelAdaptor.java:99)
at org.stringtemplate.v4.misc.ObjectModelAdaptor.getProperty(ObjectModelAdaptor.java:67)
at org.stringtemplate.v4.Interpreter.getObjectProperty(Interpreter.java:1158)

让我特别困惑的是:当模板说它应该得到 btreult.codeline.method.name 时,为什么它会尝试解析为 BTReult.method?

最佳答案

好的。这是我自己的愚蠢:虽然我确实修复了我的模板,但代码实际上使用了一个旧模板,所以在我看来我所有的修复都不起作用。 OSI 第 8 层问题 ;-)

关于java - StringTemplate 没有找到 getter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15163042/

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