我正在尝试运行一个在我自己的计算机上正常运行的.jar,但在其他人身上发出以下异常。
Exception in thread "main" java.lang.NoSuchMethodError: java.lang.Character.isAlphabetic(I)Z
at chatai.Word.shrinkEndPunct(Word.java:91)
at chatai.Word.createWord(Word.java:36)
at chatai.ChatAI.addSentence(ChatAI.java:54)
at shared.Initializer.main(Initializer.java:130)
我之前从未见过(I)Z部分,有谁知道这意味着什么?我已经尝试过更新Java了。
答案 0 :(得分:7)
我之前从未见过(I)Z部分,有谁知道这意味着什么?
(I)Z
部分描述了方法签名的参数和返回类型部分。
在这种情况下,它表示该方法将int
作为参数,并返回boolean
。
以下是此类型表示法的完整列表:
V void
Z boolean
C char
B byte
S short
I int
F float
J long
D double
L<class>; Reference type, for example Ljava/lang/String;
很难说为什么程序在您的计算机上正常运行。标准Java API中没有名为 isAlphabetic
的方法。
在Java 7中引入了Character.isAlphabetic
方法。看起来您正在运行Java 7,而您的朋友只安装了Java 6(或某些较低版本)。
答案 1 :(得分:0)
用户aioobe详细解释了如何解释此错误消息。似乎引用的方法只是introduced in java7。