Wake On Lanを実装するために、このコードを作成しました。
InetAddress address = InetAddress.getByAddress(
new byte[]{(byte)0xff,(byte)0xff,(byte)0xff,(byte)0xff});
DatagramPacket packet = new DatagramPacket(bytes, bytes.length, address, 7);
socket.send(packet);
しかし、私はこれを取得します:
java.io.IOException: Permission denied
at gnu.java.nio.VMChannel.send(Native Method)
at gnu.java.nio.VMChannel.send(VMChannel.java:308)
at gnu.java.net.PlainDatagramSocketImpl.send(PlainDatagramSocketImpl.java:261)
at java.net.DatagramSocket.send(DatagramSocket.java:659)
at com.MyApp.wakeonlan(MyApp.java:685)
他のアドレスに変更してもこのエラーが発生しないため、問題はブロードキャストアドレスのようです。どうすればそれを回避できますか?私はJamVMとGNUClasspathでlinuxbusyboxを使用しています。