我正在尝试测试服务器是否可以访问。我正在使用 ssh 跟踪来自不同服务器的日志文件,并使用来自以下网站http://www.ganymed.ethz.ch/ssh2/的 java Ganymed 连接到服务器。因此,我试图找到一种 ping 服务器的简单方法,因为我想向用户显示启动和关闭服务器的列表,以便他们在尝试跟踪服务器上的日志文件时知道自己的状态。
任何光线都将受到高度赞赏。我也尝试过使用 JPingy,但我不确定它是否符合我的要求,因为我收到长消息异常。有什么东西可以用来测试某些服务器是否可以访问,以便我可以更新用户的状态?以下是我在 JPingy 示例中使用的代码,它向我展示了一些我不理解的奇怪消息。
public class Main {
public static void main(String[] args) {
PingArguments arguments = new PingArguments.Builder().url("google.com")
.timeout(5000).bytes(32).build();
PingResult results = Ping.ping(arguments, Backend.UNIX);
System.out.println(results.ttl());
System.out.println(results.rtt_min());
System.out.println(results.received());
}
}
我得到的例外如下
java.lang.ArrayIndexOutOfBoundsException: 1
at com.googlecode.jpingy.UnixPingResult.matchReceived(UnixPingResult.java:52)
at com.googlecode.jpingy.PingResult.<init>(PingResult.java:79)
at com.googlecode.jpingy.UnixPingResult.<init>(UnixPingResult.java:29)
at com.googlecode.jpingy.Ping$Backend$1.getResult(Ping.java:31)
at com.googlecode.jpingy.Ping.ping(Ping.java:59)
at Main.main(Main.java:13)
Exception in thread "main" java.lang.NullPointerException
at Main.main(Main.java:15)
任何形式的帮助都非常感谢,是否可以使用其他库返回 true 或 false 进行连接?