我得到了这个异常,但解决了它。
java.lang.NoSuchMethodError: antlr.NoViableAltForCharException.<init>
(CLjava/lang/String;II)V
但我想知道如何解释这些消息:“(CLjava/lang/String;II)V”另外,这个“init”是否提到了 NoViableAltForCharException 类的构造函数?
谢谢。
我得到了这个异常,但解决了它。
java.lang.NoSuchMethodError: antlr.NoViableAltForCharException.<init>
(CLjava/lang/String;II)V
但我想知道如何解释这些消息:“(CLjava/lang/String;II)V”另外,这个“init”是否提到了 NoViableAltForCharException 类的构造函数?
谢谢。
类型签名 - 取自此页面。
JNI 使用 Java VM 的类型签名表示。表 3-2 显示了这些类型签名。
Z boolean
B byte
C char
S short
I int
J long
F float
D double
L fully-qualified-class ; fully-qualified-class
[ type type[]
( arg-types ) ret-type method type
例如,Java 方法:
long f (int n, String s, int[] arr);
具有以下类型签名:
(ILjava/lang/String;[I)J
它正在寻找一个构造函数antlr.NoViableAltForCharException(char, String, int, int)
,但未能在类中找到它。
<init>
方法是构造函数,方法<cinit>
是静态初始化块。参数类型由@gkamal 列出,添加V
无效。名义上,构造函数返回,这是签名末尾的void
原因。V
顺便说一句:可能很讽刺的J
是,长期L
存在于类,而它本来可以L
长期存在J
于 Java 类。;)
请参阅类型文档。这是一种方便的速记符号。
您可能在服务器上有一个过时的 .jar 文件,而不是您正在编译代码的文件。仔细检查服务器上的所有 .jar 文件是否与您正在编译的文件相同。