我已经下载了 SNMP4J 并将其添加到我的项目的构建路径中。然后我从http://shivasoft.in/blog/java/snmp/create-snmp-client-in-java-using-snmp4j/和http://shivasoft.in/blog/java/snmp/creating添加了一些代码-snmp-agent-server-in-java-using-snmp4j/检查我的代理。但是现在这些字符串打印在控制台中:
Exception in thread "main" java.lang.RuntimeException: java.net.BindException: Address already in use: Cannot bind
at org.snmp4j.transport.TransportMappings.createTransportMapping(TransportMappings.java:123)
at org.bihe.SNMPAgent.initTransportMappings(SNMPAgent.java:145)
at org.snmp4j.agent.BaseAgent.init(BaseAgent.java:144)
at org.bihe.SNMPAgent.start(SNMPAgent.java:157)
at org.bihe.TestSNMPAgent.init(TestSNMPAgent.java:35)
at org.bihe.TestSNMPAgent.main(TestSNMPAgent.java:13)
Caused by: java.net.BindException: Address already in use: Cannot bind
at java.net.DualStackPlainDatagramSocketImpl.socketBind(Native Method)
at java.net.DualStackPlainDatagramSocketImpl.bind0(Unknown Source)
at java.net.AbstractPlainDatagramSocketImpl.bind(Unknown Source)
at java.net.DatagramSocket.bind(Unknown Source)
at java.net.DatagramSocket.<init>(Unknown Source)
at java.net.DatagramSocket.<init>(Unknown Source)
at org.snmp4j.transport.DefaultUdpTransportMapping.<init>(DefaultUdpTransportMapping.java:100)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at org.snmp4j.transport.TransportMappings.createTransportMapping(TransportMappings.java:104)
... 5 more
我在 mediafire 中上传了我的洞项目: https ://www.mediafire.com/?lcyap63rs93qdwo 谁能解释一下,为什么程序会抛出这些异常?我以前没有使用过 snmp,这是我第一次在网络课程中进行研究。