您的位置:程序门 -> java -> 非技术区



使用java communications api访问串口程序,抛出javax.comm.nosuchportexception


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


使用java communications api访问串口程序,抛出javax.comm.nosuchportexception
发表于:2007-04-19 15:30:33 楼主
请教各位大侠:
        我在pc机上实现java   comm通信,本来这个项目是用vb实现的,能实现com1口的通信,但是我要用java来改进,可是不知道怎么回事,我总是检测不到com端口,一个端口都检测不到,急交项目,谢谢大家!!!
        其他的配置,java.comm包也安装到特定的目录下了。
        1.   将下载后的压缩文件zip压缩包解压,假设解压目录为c:\commapi。假设java开发包安装在了c盘的c:\jdk1.5中。  

  2.   使用如下命令将win32com.dll复制到c:\jdk1.5\bin中。  

copy   c:\commapi\win32com.dll   c:\jdk1.5\bin  

  3.使用如下命令将comm.jar复制到c:\jdk1.5\lib目录中。  

copy   c:\commapi\comm.jar   c:\jdk1.5\lib  

  4.   使用如下命令将javax.comm.properties复制到c:\jdk`1.5\lib中。  

copy   c:\commapi\javax.comm.properties   c:\jdk1.5\lib  

  5.   将comm.jar加入到classpath中。  

        import   javax.comm.*;
        import   java.util.*;
        省略其他的,部分主要源码如下:
        enumeration   en   =   commportidentifier.getportidentifiers();
while   (en.hasmoreelements())  
{
portid   =   (commportidentifier)en.nextelement();
//如果端口类型是串口,则打印出其端口信息
if   (portid.getporttype()   ==   commportidentifier.port_serial)  
textarea.append(portid.getname());
}
try
{
portid=commportidentifier.getportidentifier( "com1 ");
serialport   serialport   =   (serialport)portid.open( "intermec   3440 ",   2000);
serialport.setserialportparams(2400,   serialport.databits_8
          ,   serialport.stopbits_1,   serialport.parity_none);

}
catch(portinuseexception   ex)
{
joptionpane.showmessagedialog(this,ex);
}
catch(nosuchportexception   ex)
{
joptionpane.showmessagedialog(this,ex);
}
catch(unsupportedcommoperationexception   ex)
{
joptionpane.showmessagedialog(this,ex);
}

        程序运行就是报错:javax.comm.nosuchportexception

        请各位高手指教,谢谢了!!!
发表于:2007-04-20 08:41:081楼 得分:0
uppp
发表于:2007-04-20 13:36:182楼 得分:0
up
发表于:2007-04-23 09:35:233楼 得分:0
没有人知道吗?
发表于:2007-06-05 16:02:164楼 得分:0
你只是将javax.comm包的相关文件添加到jdk下,而没有添加到jre下,别忘了,程序是在jre下运行的。


快速检索

最新资讯
热门点击