我想做一个java应用程序,与串行设备(手持扫描仪)通信,使应用程序是独立于平台。我找到了一些代码示例,当我将它们复制到Eclipse中时,它说javax.com .*丢失了。我怎么在我的Mac上安装这个?如何将这个库添加到我的应用程序中,让用户无需安装任何东西?
我希望能够给用户一个jar文件和设备,他们应该能够在windows/Mac/Linux上运行它,而不需要很少或不需要配置。
我发现了一个下载,我可以下载一个javax.com .jar文件,但下载包括一个win32com .dll它取决于一些方式-至少这是我得到的错误,当我把jar文件添加到我的项目。
Error loading win32com: java.lang.UnsatisfiedLinkError: no win32com in java.library.path
这是Java通信API。你可以在这里买到,但它帮不了你。支持的平台为Solaris SPARC、Solaris x86和Linux x86。
对于Mac和Linux,如果已经配置了串口,可以打开/dev/ttys0、/dev/ttys1、/dev/ttys2等文件进行读写操作。在Windows上,如果已经配置了串口,可以打开"COM1"、"COM2"等,对其进行读写。
不幸的是,javax.comm(如参考实现中提供的那样)不是跨平台的,因此您将不得不绑定额外的本机库和支持类,或者使用与平台相关的方式来配置串行端口。在Windows上,这可能是"mode"命令,在Mac/Linux上,这可能是stty命令。
推荐RXTX。它不使用javax.comm
包,但它遵循相同的API(有一些有用的添加)。
E1:事实证明,RXTX 2.0确实使用了javax.comm
包。