以跨平台方式收集有关当前服务器的信息

时间:2013-03-27 04:11:13

标签: java hostname

我们有一些Java应用程序,可以从命令行或Web服务器内部调用。无论哪种方式,他们都会登录到中央数据库。能够在启动时设置我们的java应用程序以读取主机名(或其他一些唯一标识符)非常有用,因此它们可以报告它们正在运行的服务器以进行调试。 Java中是否有这样的机制?

2 个答案:

答案 0 :(得分:2)

试试

InetAddress.getLocalHost().getHostName();   

答案 1 :(得分:1)

我已经相当有效地使用ManagementFactory#getRuntimeMXBean()进行调试。您可能只想要name

String localHostName = ManagementFactory.getRuntimeMXBean().getName();
  

返回表示正在运行的Java虚拟机的名称。返回的名称字符串可以是任意字符串,Java虚拟机实现可以选择在返回的名称字符串中嵌入特定于平台的有用信息。每个正在运行的虚拟机都可以有不同的名称。