`

Windows下的java串口开发环境配置

阅读更多

       

转载请标明出处:http://blog.csdn.net/bayougeng/archive/2009/08/04/4405896.aspx

 

       前段时间研究了一下在Windows操作系统下用java进行串口操作。很关键的一点就是环境配置。我发现网上的文章千篇一律。都需要将几个文件copy到JDK安装目录下的某个目录中。按照网上介绍的方法进行配置的话,也能将开发环境配置起来。但是,由于程序运行必须的jar和dll无法打包,而产生不能成功部署的问题。比如,我在某个论坛上就看到,有个网友用Applet从客户端读串口的数据,Applet在他自己的机器上运行没有问题(当然没有问题,jar什么的都copy到jdk目录中了,成为jdk的一部分了),但是从别的机器访问的时候,Applet就不能正常运行了。问题很明显,必须的jar和dll文件没有被load到客户端去。本文根据自己的切身体验,总结出一套环境配置的方法。希望对网友有所帮助。

一.需要的工具和文件

1.eclipse 版本:3.0以上即可。

2.rxtx-2.1-7-bins-r2 .zip 出处:http://users.frii.com/jarvi/rxtx/download.html

3.JDK 版本:我用的是1.5版,但是我认为更低的版本也没有问题。

二.环境搭建的步骤

step1.在eclipse中新建一个工程(根据你自己的需要,Applet,tomcat,java工程等均可)。

step2.在工程下建一个lib文件夹。

step3.将rxtx-2.1-7-bins-r2 .zip解压缩,得到文件夹[rxtx-2.1-7-bins-r2]。

step4.将[rxtx-2.1-7-bins-r2]\RXTXcomm.jar这个文件copy到step2创建的lib中。

step5.将[rxtx-2.1-7-bins-r2]\Windows\i368-mingw32目录下的两个dll文件copy到step2创建的lib中。

step6.在工程上右键 -> Properties -> Java Builder Path -> Libraries -> Add JARs -> 选择step2中创建的lib目录下的RXTXcomm.jar -> OK。

step7.最关键的一步。点RXTXcomm.jar前面的小加号(+) -> 选择Native library location -> 点右边一列按钮中的Edit… -> 选择step2中创建的lib目录 -> OK。

补充:如果你的代码需要调用本地dll,你可以通过同样的方式设置Native library location。

三.环境配置完了以后,可以写一个程序来测试一下了。以下是我的test程序。

view plaincopy to clipboardprint?
import gnu.io.CommPortIdentifier;  
import java.util.Enumeration;  
public class CommTest {  
    static CommPortIdentifier portId;  
    static Enumeration portList;  
    static int bauds[] = { 9600, 19200, 57600, 115200 };  
    public static void main(String[] args) {  
        portList = CommPortIdentifier.getPortIdentifiers();  
        while (portList.hasMoreElements()) {  
            portId = (CommPortIdentifier) portList.nextElement();  
            if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {  
                System.out.println("Find CommPort: " + portId.getName());  
            }  
        }  
    }  

import gnu.io.CommPortIdentifier;
import java.util.Enumeration;
public class CommTest {
 static CommPortIdentifier portId;
 static Enumeration portList;
 static int bauds[] = { 9600, 19200, 57600, 115200 };
 public static void main(String[] args) {
  portList = CommPortIdentifier.getPortIdentifiers();
  while (portList.hasMoreElements()) {
   portId = (CommPortIdentifier) portList.nextElement();
   if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {
    System.out.println("Find CommPort: " + portId.getName());
   }
  }
 }
}

正确的运行结果应该像下面这样:

Stable Library
=========================================
Native lib Version = RXTX-2.1-7
Java lib Version   = RXTX-2.1-7

Find CommPort: COM1

四.总结

用Java进行串口通讯程序的开发,总的说有三种途径。

1.用sun提供的开发包javacomm。但是sun已经停止了对这个包的维护了。它只能适用于较低版本的JDK。而且它的配置很麻烦。

2.用rxtx开发包。

3.用Delphi或者C++等更易于操作底层硬件的开发语言开发本地代码。借助JNI技术,用Java调用本地代码。根据我的理解,实际上rxtx开发包也是用的第三种途径。压缩文件中的两个dll文件就是最好的证据。

4.如果你的工程最终可能在其他操作系统上,你应该将[rxtx-2.1-7-bins-r2]文件夹下对应操作系统目录中的文件copy到你的工程lib目录中。比如,你要在linux下运行,那就应该把linux文件夹下的so文件copy到工程lib文件夹中。rxtx可以根据操作系统环境,选择需要加载的本地文件。这样就能真正做到跨系统,跨平台了。

 

转载请标明出处:http://blog.csdn.net/bayougeng/archive/2009/08/04/4405896.aspx

分享到:
评论

相关推荐

    java 串口开发需要的64位 rxtxSerial.dll

    总之,`rxtxSerial.dll`是Java串口开发在64位Windows系统中的关键组件,RXTX库提供了一套完整的API,使得Java程序员可以方便地实现串行通信功能。正确配置和使用这个库,可以帮助你构建能够与各种串行设备进行有效...

    java调用windows串口

    Java调用Windows串口是Java开发中的一种常见需求,特别是在嵌入式系统、物联网设备或者与硬件交互的应用中。在Java中,虽然标准库没有直接提供串口通信的支持,但可以通过JNI(Java Native Interface)或者第三方库来...

    JAVA串口模拟调试

    总之,Java串口模拟调试利用VSPD和相应的Java串口库,可以在没有物理串口的环境下进行串行通信的测试和调试,这对于开发和维护依赖串口通信的系统至关重要。通过熟悉这些工具和技术,开发者能够更加高效地解决与串口...

    linux 下java的串口,并口开发(RXTXcomm.jar)

    在Linux环境下进行Java的串口(Serial Port)和并口(Parallel Port)开发时,开发者通常会使用开源库RXTXcomm.jar。这个库为Java应用程序提供了与串口和并口通信的能力,使得Java程序员无需依赖操作系统特定的API就...

    javacomm20-win32.rar_JAVA comm不_Java 串口通信_javacomm20_javacomm20-

    `javacomm20-win32.rar`这个压缩包包含了一个适用于Windows系统的Java串口通信组件,它允许Java应用程序通过串行端口与外部设备进行数据交换。`javacomm20`是这个库的版本号,暗示这是一个较早的实现,可能针对JDK ...

    JAVA串口操作例子

    Java串口操作是Java编程中一个相对特殊但实用的领域,尤其在嵌入式系统、物联网设备通信或者工业自动化等领域中。本示例是通过RXTX库在...理解并掌握Java串口操作以及RXTX的使用,对于进行这类开发工作至关重要。

    Java串口编程API包

    Java串口编程API包是Java平台上进行串行通信的关键工具,它允许开发者通过Java程序控制串行端口,实现与外部设备的交互。这个API包包括了几个关键组件,如`comm2.0.jar`、`win32com.dll`以及`javax.comm.properties`...

    Java串口开发方法

    Java串口开发是一种在Java环境下实现设备间串行通信的技术,广泛应用于嵌入式系统、自动化设备、数据采集等领域。本文将深入探讨Java串口开发的相关知识点,包括环境配置、开发过程以及实例应用。 首先,Java环境...

    java实现串口通信demo(含串口通信jar包)

    Java串口通信是一种在计算机之间或计算机与其他设备(如PLC、Arduino等)进行低级数据传输的方法。在Java中实现串口通信通常需要依赖外部库,如本示例中的"RXTXcomm.jar"。这个jar包包含了32位和64位版本,适用于...

    JAVA 串口编程JDK

    Java串口编程是Java开发中一个相对特殊但重要的领域,特别是在设备交互、嵌入式系统或物联网(IoT)应用中。"JAVA 串口编程JDK" 提供了一个Java运行环境包,使得开发者能够利用Java语言进行串口通信,这对于那些希望在...

    java串口操作源码

    Java串口操作是Java编程中一个相对特殊但重要的领域,主要涉及到硬件通信和设备交互。在实际应用中,比如工业自动化、物联网设备控制等场景,Java串口编程扮演着关键角色。标题提到的问题是关于数据传输时遇到的一个...

    JAVA串口通信实例(GUI图像化界面)

    Java串口通信是一种在计算机之间通过串行接口进行数据传输的技术。在Java中,我们可以使用javax.comm库或者RXTX库来实现串口通信。这个实例是关于如何使用GUI(图形用户界面)来构建一个Java应用程序,使得用户可以...

    全面掌握JAVA串口编程

    Java串口编程是Java开发中一个重要的领域,尤其在物联网(IoT)、嵌入式系统和设备通信中,它扮演着关键角色。本资源包包含的8个文件旨在帮助开发者全面理解并掌握这一技术。以下是对每个知识点的详细解释: 1. **...

    java串口通信全套完整代码-导入eclipse直接用

    本资源“java串口通信全套完整代码-导入eclipse直接用”提供了一套完整的Java串口通信实现,无需额外配置,可直接在Eclipse集成开发环境中使用。 Java串口通信主要依赖于`javax.comm`库,但这个库在Java 6之后就...

    java串口资源文件

    RXTXcomm、rxtxParallel和rxtxSerial是与Java串口通信相关的标签,它们分别代表了RXTX库的主要部分,包括串口通信的核心接口、并行通信支持以及与串行设备交互的具体实现。 RXTX是一个开源的Java库,它为Java提供了...

    java串口插件win64位.zip

    在使用这个win64位的Java串口插件时,首先需要确保你的开发环境是64位的Java Development Kit (JDK)。然后,解压下载的zip文件,将其中的库文件(通常为jar包)添加到项目的类路径中。这样,你就可以通过导入相关的...

    Java串口开发包 RXTX

    Java串口开发包RXTX是一个开源项目,它为Java编程语言提供了串行通信功能,使得开发者能够在Java应用程序中方便地访问串行端口。RXTX库是跨平台的,支持Windows、Linux、Mac OS X以及其他Java兼容的操作系统。在Java...

    java_windows_32位与64位串口驱动

    "java_windows_32位与64位串口驱动"这个压缩包提供了适用于不同系统环境的驱动,确保无论是在32位还是64位的Windows操作系统上,Java程序都能正确地与串行端口进行交互。由于压缩包不包含Java Development Kit (JDK)...

Global site tag (gtag.js) - Google Analytics