linux下java socket编程报java.net.Exception:Permission denied(权限不足)

本人用Linux进行java的socket编程遇见这个错误,原因很简单,就是端口号没有选对。

kevin@kevin-dev:/home/ftp$ java Demo1_recieve
Exception in thread "main" java.net.BindException: Permission denied (Bind failed)
at java.net.PlainDatagramSocketImpl.bind0(Native Method)
at java.net.AbstractPlainDatagramSocketImpl.bind(AbstractPlainDatagramSocketImpl.java:93)
at java.net.DatagramSocket.bind(DatagramSocket.java:392)
at java.net.DatagramSocket.(DatagramSocket.java:242)
at java.net.DatagramSocket.(DatagramSocket.java:299)
at java.net.DatagramSocket.(DatagramSocket.java:271)

at Demo1_recieve.main(Demo1_recieve.java:13)

在linux系统中,端口号再1024以下的需要root权限,只要把端口改成大于1024的就可以了,但避开一些软件的默认端口,如Tomcat的8080端口,mysql的3306端口。

你可能感兴趣的:(Java,Linux)