Java getHardwareAddress()在JDK 6中返回null

Java getHardwareAddress()在JDK 6中返回null,java,nullpointerexception,mac-address,jdk1.6,Java,Nullpointerexception,Mac Address,Jdk1.6,我正在尝试写一个方法来获取计算机的mac地址。在几台计算机上进行了测试: public String mac() throws UnknownHostException, SocketException { InetAddress ip = InetAddress.getLocalHost(); NetworkInterface network = NetworkInterface.getByInetAddress(ip); byte[] mac = ne

我正在尝试写一个方法来获取计算机的mac地址。在几台计算机上进行了测试:

public String mac() throws UnknownHostException, SocketException {
            InetAddress ip = InetAddress.getLocalHost();
    NetworkInterface network = NetworkInterface.getByInetAddress(ip);
    byte[] mac = network.getHardwareAddress();
    StringBuilder sb = new StringBuilder();
    for (int i = 0; i < mac.length; i++) {
        sb.append(String.format("%02X%s", mac[i], (i < mac.length - 1) ? "-" :""));     
    }
            System.out.println("MAC: " + sb.toString());
            return(sb.toString());
}
public String mac()抛出UnknownHostException、SocketException{
InetAddress ip=InetAddress.getLocalHost();
NetworkInterface网络=NetworkInterface.getByInetAddress(ip);
字节[]mac=network.getHardwareAddress();
StringBuilder sb=新的StringBuilder();
for(int i=0;i
它在运行JDK 7的计算机上执行它应该执行的操作。但是,在JDK 6上,字节[]mac返回null,导致nullPointerException。有人知道为什么吗?

请看这里的讨论