java串口编程配置问题解决

来源:互联网 发布:c语言中产生随机数 编辑:程序博客网 时间:2024/05/01 19:56

现在已经不支持javax.comm,经试验发现该包不可用,遂改为兼容该包并更多扩展的RXTX包,实验成功。

参考:http://www.docin.com/p-224301266.html,具体设置如图所示:




转载自:http://blog.csdn.net/jerry_liu20080504/article/details/5734721(by Jerry_liu20080504)

java串口编程,我所采用的是javacomm20-win32.zip。本文主要介绍eclipse下如何配置该压缩包下的三个主要文件,comm.jar,javax.comm. properties和win32comm.dll。其他开发所用配置,如环境变量设置等这里假设已经设置好。

 

这是我程序日志的一部分:

弄了一天的eclipse下java串口编程。相关程序已经找好,编译也能过去,就是在运行的时候出现找不到串口的问题,具体反应到程序里就是portList.hasMoreElements()返回的是false,代表没能找到串口和并口。查了许多文章,都说是javacomm20-win32包中的三个文件的配置问题。在网上找了许多,有些人说是配置jdk1.6.x.x目录下面的子目录相应文件夹,有些说是jre1.6.x下的文件夹,有些说是jre文件夹下的目录。反复配置许多次,最后看到一篇文章介绍关于eclipse开发环境和运行环境配置的文章,看过之后自己理解,就是说如果系统中装了多个jdk,然后再eclipse安装的时候会选择(具体怎么选择我没去查,对于我来说暂时无关紧要)某个目录,这在eclipse下的Help->About Eclipse->Installation Details->Configuration下可以查到。我的配置里涉及到前文提到的三个文件的配置路径为:

 

java.ext.dirs=C:/Program Files/Java/jre6/lib/ext;C:/WINDOWS/Sun/Java/lib/ext

 

java.library.path=C:/Program Files/eclipse;.;C:/WINDOWS/Sun/Java/bin;C:/WINDOWS/system32;C:/WINDOWS;C:/Program Files/Java/jre6/bin/client;C:/Program Files/Java/jre6/bin;C:/WINDOWS/system32;C:/WINDOWS;C:/WINDOWS/System32/Wbem;C:/Program Files/Common Files/Thunder Network/KanKan/Codecs;C:/Program Files/Common Files/TTKN/Bin;C:/Program Files/IDM Computer Solutions/UltraEdit-32;C:/PROGRA~1/ATT/Graphviz/bin;C:/Program Files/Java/jdk1.6.0_06/bin;C:/Program Files/TortoiseSVN/bin;C:/Program Files/Microsoft Visual Studio/Common/Tools/WinNT;C:/Program Files/Microsoft Visual Studio/Common/MSDev98/Bin;C:/Program Files/Microsoft Visual Studio/Common/Tools;C:/Program Files/Microsoft Visual Studio/VC98/bin;C:/Program Files/StormII/Codec;C:/Program Files/StormII

 

sun.boot.library.path=C:/Program Files/Java/jre6/bin

 

并且java home的路径为:

java.home=C:/Program Files/Java/jre6

sun.boot.class.path=C:/Program Files/Java/jre6/lib/resources.jar;C:/Program Files/Java/jre6/lib/rt.jar;C:/Program Files/Java/jre6/lib/sunrsasign.jar;C:/Program Files/Java/jre6/lib/jsse.jar;C:/Program Files/Java/jre6/lib/jce.jar;C:/Program Files/Java/jre6/lib/charsets.jar;C:/Program Files/Java/jre6/classes

 

 

所以我分析认为我的eclipse用的是C:/Program Files/Java/jre6的配置。

 

经过试验分析,然后确定三个文件的存放路径如下:

javax.comm.properties文件必须放在C:/Program Files/Java/jre6/lib(我用的eclipse中的java home是C:/Program Files/Java/jre6,如果java home变了,这里的路径需要变)

comm.jar放哪儿都无所谓,只要在要使用它的工程右键->Properties->Java Build Path->Libraries->Add External JARs添加的路径一致就行。

win32com.dll放在C:/Program Files/Java/jre6/bin下。或者说是放在前文提到的java.library.path指定的目录下即可。

至此,三个文件配置完成。整了一天,终于弄明白为啥网上那么多配置都没能在eclipse下配置好了。原来是没弄明白eclipse选择的运行环境。所以,以后如果在遇到类似问题,先查看eclipse的安装信息,确定其运行环境再配置其他。



-------------------------------------------------------------------------------------------------------------------------------

我想补充一点,要想在系统任何地方都能使用JavaComm,可以按以下方案安装:

comm.jar 应该放在::
%JAVA_HOME%/lib
%JAVA_HOME%/jre/lib/ext

win32com.dll 应该放在::
%JAVA_HOME%/bin
%JAVA_HOME%/jre/bin
%windir%System32

javax.comm.properties 应该放在::
%JAVA_HOME%/lib
%JAVA_HOME%/jre/lib

这是我在一个国外的论坛上看到的,自己就是用这个方法解决的,详情可转到:http://www.java-forums.org/new-java/32222-how-use-comm-jar-win32com-dll-anywhere.html
至于为什么要这样做,暂时还没弄明白,先分享着这些!

0 0