`
nier007
  • 浏览: 7593 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

javax.comm 2.0 windows下Eclipse的配置 转

阅读更多
要在Windows下,对计算机的串口或并口等进行编程,可以选择使用Java Communication API (javax.comm)包,现在最新的版本是3.0版本,但是3.0版本并没有支持windows系统的,只有Linux和Solaris,所有我们只能找原来的2.0的版本了。http://llk.media.mit.edu/projects/cricket/software/javaSerial.zip (两个文件夹里面有所需的3个文件),http://mdubuc.freeshell.org/Jolt/javacomm20-win32.zip 和(完整的2.0版本,还有examples)。这两个网址上就有2.0版本。如果在Linux下3.0就更加多了,当然官方网站是首选了http://java.sun.com/products/javacomm/ 。介绍串口编程的文章很多,我自己的学习也是从这些资料中所得,所以这里我不在此一一列举代码了。只把重点放在Eclipse的配置上,怎样加入这三个文件。
     当然,我们必须有一段测试代码来来测试是否加入包成功了,所以我在这里给出测试代码。、

view plaincopy to clipboardprint?
import java.util.Enumeration;  
import javax.comm.CommPortIdentifier;  
public class TestSerial {  
    /** 
     * @param args 
     */ 
    public static void main(String[] args) {  
         listPortChoices();      
    }  
    public static void listPortChoices() {  
        CommPortIdentifier portId;  
        Enumeration en = CommPortIdentifier.getPortIdentifiers();  
        // iterate through the ports.  
        while (en.hasMoreElements()) {  
            portId = (CommPortIdentifier) en.nextElement();  
            if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {  
                System.out.println(portId.getName());  
            }  
        }  
    }  

import java.util.Enumeration;
import javax.comm.CommPortIdentifier;
public class TestSerial {
    /**
     * @param args
     */
    public static void main(String[] args) {
         listPortChoices();   
    }
    public static void listPortChoices() {
        CommPortIdentifier portId;
        Enumeration en = CommPortIdentifier.getPortIdentifiers();
        // iterate through the ports.
        while (en.hasMoreElements()) {
            portId = (CommPortIdentifier) en.nextElement();
            if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {
                System.out.println(portId.getName());
            }
        }
    }
}
ok,以上一段测试代码的含义很简单,是用一个枚举将机器上所有端口名遍历并输出一遍,其中CommPortIdentifier是通讯端口管理的类,具体请查阅javaAPI,在这里主要将配置。
      首先来介绍我的方法和我遇到的问题:comm.jar,javax.comm. properties和win32comm.dll。将文件comm.jar拷贝到%JAVA_HOME%\jre\lib\ext;文件 javax.comm. properties拷贝到%JAVA_HOME%\jre\lib; 文件win32comm.dll拷贝到%JAVA_HOME%\bin。注意%JAVA_HOME%是jdk的路径,而非jre。比如说我自己的机器的%JAVA_HOME%\是D:\Program Files\Java\jdk1.6.0_11。但具体拷贝到哪个文件夹下,还是有待商榷的,可能由于版本的不同吧。
       导入后,在Eclipse的工程中加入jar包,“工程右键-> properties-> java   build   path   ->   libraries   ->   add   external   jar”去找到你所放置的comm.jar的位置就可以了。好,下面就可以运行了。
       如果运行结果为空,什么输出都没有,一般不太可能是你的机器没有串口,不行去掉 if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) 试试看,不会连并口都没有吧?大多情况下是没有找到javax.comm. properties文件,那你把它再放到JreDIR/jre/lib吧,我的机器是 D:\Program Files\Java\jre6\lib里面,这个时候应该就好了。
       如果出现的错误结果是,没有找到comm.jar的红色错误信息,那么也放到jre的bin里面就可以了,我机器是D:\Program Files\Java\jre6\bin中。Eclipse是先找javax.comm. properties文件的,然后再找win32comm.dll,所以如果是没有显示端口时,可能dll也不一定配好了。正常之后我的机器输出的串口是COM3,去掉if条件后输出的是COM3 LPT1 LPT2,我调试的机器是一台笔记本,是没有串口的那种,只有通讯端口一个 RIM Virtual Serial Port v2 (COM3)而已。好了如果输出正常,就说明弄好了,转自别人的文章
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    javax.comm jar包

    在提供的压缩包文件中,`comm-2.0.jar`就是javax.comm API的实现文件,包含了所有必要的类和资源。将这个jar包添加到项目的类路径中,就能在代码中使用javax.comm 的功能了。而`新建文本文档.txt`可能是一个说明文件...

    javax.comm包

    **javax.comm包详解** 在Java编程环境中,`javax.comm`包是用于串行通信的一组接口和类。这个包提供了一种与硬件设备(如调制解调器、串口打印机等)进行通信的方式,使得Java程序员能够方便地实现串行端口的数据...

    win32comm.dll,comm.jar,javax.comm. properties

    总结来说,"win32comm.dll"、"comm.jar"和"javax.comm.properties"是Java串口通信的关键组件,它们在Windows环境下为Java应用程序提供了与串行端口交互的能力。在开发Java Applet时,正确引入这些资源并处理好权限...

    javax.comm 读取串口

    在Java编程环境中,当涉及到与硬件设备如PLC(可编程逻辑控制器)进行通信时,`javax.comm`库是一个非常重要的工具。这个库允许开发者在Java应用程序中读取和写入串行端口,从而实现与外部设备的交互。本文将深入...

    javax.ws.rs-api-2.0-API文档-中文版.zip

    赠送jar包:javax.ws.rs-api-2.0.jar; 赠送原API文档:javax.ws.rs-api-2.0-javadoc.jar; 赠送源代码:javax.ws.rs-api-2.0-sources.jar; 赠送Maven依赖信息文件:javax.ws.rs-api-2.0.pom; 包含翻译后的API文档...

    Java串口开发(内含comm.jar、win32com.dll、javax.comm.properties)文件

    java串口开发示例 内含win32com.dll、javax.comm.properties、comm.jar等文件 csdn上倒是资源不少,但积分要得太多了,好不容易在国外网站找到一个,免费共享给大家~~~

    javax.comm.properties

    javax comm properties 欢迎下载

    javax.comm

    使用javax.comm时,开发者需要将解压后的文件放置到Java运行环境的相应目录下。"putInBin"可能是指将某些可执行文件或脚本放入JDK的bin目录,以便于系统能够识别和执行;"putInLib"则表示将库文件(如jar文件)放入...

    javax.jms.jar

    Classes contained in javax.jms.jar: javax.transaction.xa.XAResource.class javax.jms.BytesMessage.class javax.jms.Message.class javax.jms.JMSException.class javax.jms.Destination.class javax.jms....

    javax.servlet-3.0.0.v201112011016-API文档-中文版.zip

    Maven坐标:org.eclipse.jetty.orbit:javax.servlet:3.0.0.v201112011016; 标签:eclipse、jetty、orbit、javax、servlet、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”...

    javax.jms.jar下载

    javax.jms.BytesMessage.class javax.jms.Connection.class javax.jms.ConnectionConsumer.class javax.jms.ConnectionFactory.class javax.jms.ConnectionMetaData.class javax.jms.DeliveryMode.class javax.jms....

    javax.persistence.jar

    Files contained in javax.persistence.jar: META-INF/MANIFEST.MF javax.persistence.Access.class javax.persistence.AccessType.class javax.persistence.AssociationOverride.class javax.persistence....

    javax.ws.rs-api-2.0.jar

    javax.ws.rs-api-2.0.jar

    Java串口通信(rxtxComm改装为javax.comm接口)

    由于Sun的Java串口通信(javax.comm)不在提供对Windows的支持,导致其版本过于落后,串口读写效率低。但是很多既有的应用调用的却是javax.comm的接口。故而,把目前开源的、效率较高的rxtxComm接口转成javax.comm...

    javax.servlet-3.0.0.v201112011016-API文档-中英对照版.zip

    Maven坐标:org.eclipse.jetty.orbit:javax.servlet:3.0.0.v201112011016; 标签:eclipse、jetty、orbit、javax、servlet、中英对照文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html...

    javax.ejb.jar下载

    Files contained in javax.ejb.jar: META-INF/MANIFEST.MF javax.ejb.AccessLocalException.class javax.ejb.AccessTimeout.class javax.ejb.ActivationConfigProperty.class javax.ejb.AfterBegin.class javax....

    短信猫收发lib及Demo---comm.jar,javax.comm.properties和win32comm.dll

    3. **javax.comm.properties**:这是一个配置文件,用于配置Java Comm API,定义了串口的参数,如波特率、数据位、停止位、校验位等。开发者可以根据实际的短信猫硬件配置来修改这个文件。 4. **win32comm.dll**:...

    javax.jar 包免费下载

    javax.jar javax.jar javax.jar javax.jar javax.jar javax.jar javax.jar javax.jar javax.jar javax.jar javax.jar javax.jar javax.jar javax.jar javax.jar javax.jar javax.jar javax.jar javax.jar javax.jar ...

Global site tag (gtag.js) - Google Analytics