Java - 来自错误消息的信息

时间:2013-07-31 00:09:19

标签: java compiler-errors

此错误消息告诉缺少构造函数的签名是什么?

引起:java.lang.NoSuchMethodError:org.apache.thrift.transport.TSocket。(Ljava / lang / String; III)V

这是否意味着没有带有单个String参数的构造函数?我更了解“III”和“V”的用途。

感谢。

2 个答案:

答案 0 :(得分:6)

当您看到Ljava/lang/String;时,是的,这是签名中的String,这是第一个。

三个I表示另外三个int个参数。

在结束括号后,V表示返回类型为void

签名为(String, int, int, int),返回void

This page包含每个符号含义的列表。

答案 1 :(得分:2)

正在寻找构造函数(String, int, int, int)
V表示void。构造函数返回void,这是签名结束时V的原因。

  

(Ljava /郎/字符串; III)V

     

Ljava /郎/字符串; (L完全合格的班级;)

     

III(int,int,int)

     

V - >返回类型void

此链接可以帮助您types

For example, the Java method:

long f (int n, String s, int[] arr); 
has the following type signature:

(ILjava/lang/String;[I)J