我生成了一个存根,它在其中尝试访问Jar文件中定义的Static全局变量,如下所示。

generatedSetterHelperImpl(cancelWaybill, CANCELWAYBILL$0, 0, org.apache.xmlbeans.impl.values.XmlObjectBase.KIND_SETTERHELPER_SINGLETON);


在这里,它给出了KIND_SETTERHELPER_SINGLETON变量的错误“无法解决”。当我反编译XmlObjectBase.class文件时,我发现定义了KIND_SETTERHELPER_SINGLETON。但是在Eclipse F3中,XmlObjectBase不会显示KIND_SETTERHELPER_SINGLETON

java - 静态全局变量无法解析-LMLPHP

反编译文件(XmlObjectBase.class)的片段如下所示。

public abstract class XmlObjectBase
implements TypeStoreUser,
Serializable,
XmlObject,
SimpleValue {
    public static final short MAJOR_VERSION_NUMBER = 1;
    public static final short MINOR_VERSION_NUMBER = 1;
    public static final short KIND_SETTERHELPER_SINGLETON = 1;
    public static final short KIND_SETTERHELPER_ARRAYITEM = 2;
    public static final ValidationContext _voorVc;


好吧,我能够访问MINOR_VERSION_NUMBER变量。

Any Idea on this.

最佳答案

是古老的历史,但这是我的遭遇。

我不得不为客户端重构应用程序,然后开始运行测试。
第一次测试,第一次错误,NoSuchMethodError
generateSetterHelperImpl(Lorg / apache / xmlbeans / XmlObject; Ljavax / xml / namespace / QName; IS)Lorg / apache / xmlbeans / XmlObject;

在Intellij中,我有xmlbeans-2.3.0.jar,并且在weblogic上使用的相同代码也很好。

发现了我的客户端项目中使用xmlsbeans的位置。
mvn依赖项:tree -Dverbose -Dincludes = org.apache.xmlbeans

就我而言,它在测试依赖项test-jartest中

我要做的就是从pom.xml xmlbeans-2.3.0中排除,添加2.6.0,从而节省了一天。

10-07 15:29