我正在尝试在 Scala 应用程序中获取我的机器的 MAC 地址。搜索时有几个结果,但它们都使用如下内容,涉及 InetAddress.getLocalHost()
后跟 NetworkInterface.getByInetAddress(...)
:Get MAC address on local machine with Java
我的问题是结果最终为空:
val localhost = InetAddress.getLocalHost
println(s"lh: $localhost")
val localNetworkInterface = NetworkInterface.getByInetAddress(localhost)
println(s"lni: $localNetworkInterface")
>>lh: ubuntu/127.0.1.1
>>lni: null
最佳答案
getByInetAddress
在我的机器上有同样的错误行为,但你可以改用 getNetworkInterfaces
:
import java.net._
import scala.collection.JavaConverters._
NetworkInterface.getNetworkInterfaces.asScala map (_.getHardwareAddress) filter (_ != null)
关于java - 如何在 java 或 scala 中获取本地主机网络接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23900172/