我正在尝试使用smslib发送短信。它在Windows上工作正常,但现在我需要在ubuntu 11.10下工作。所以我从这里http://www.cloudhopper.com/opensource/rxtx/安装了一个64位操作系统的rxtx。使用usb连接手机,usb已被检测为/ dev / ttyACM0,我链接到/ dev / ttyS32(一个空闲串口)。然后我尝试运行该程序,我收到以下错误:
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007f44f9a065da, pid=8875, tid=139934227818240
#
# JRE version: 7.0_147-b147
# Java VM: OpenJDK 64-Bit Server VM (21.0-b17 mixed mode linux-amd64 compressed oops)
# Derivative: IcedTea7 2.0
# Distribution: Ubuntu 11.10, package 7~b147-2.0-0ubuntu0.11.10.1
# Problematic frame:
# C [librxtxSerial.so+0x75da] Java_gnu_io_RXTXPort_nativeDrain+0xea
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /home/radek/NetBeansProjects/sms/hs_err_pid8875.log
#
# If you would like to submit a bug report, please include
# instructions on how to reproduce the bug and visit:
# https://bugs.launchpad.net/ubuntu/+source/openjdk-7/
#
Java Result: 134
我不知道如何解决这个问题。
答案 0 :(得分:3)
我的ubuntu 11.10 64bit版本遇到了类似的问题。
问题是因为我手动安装了RXTX并且它与我的架构不兼容。 我使用
重新安装了RXTXsudo apt-get install librxtx-java
现在它有效。我希望这会有所帮助。
答案 1 :(得分:2)
答案 2 :(得分:1)
我安装了一个较新的版本,现在工作正常。
答案 3 :(得分:0)
在网站上下载更新版本:http://jlog.org/rxtx-lin.html
"下载' RXTXcomm.jar'并将其安装在' lib / ext' Java VM的文件夹(例如,对于Ubuntu 11.04:' /usr/lib/jvm/java-6-sun-1.6.0.26/jre'对于RH9和Sun的Java 1.6.0_04: ' /usr/java/j2re1.6.0_04/lib/ext')。 您可能需要将文件下载到临时位置(例如Desktop)并使用特权命令(或来自命令/终端的sudo)将其移动到目标位置。
如果您要从V 3.x或V4 Beta 2升级(即从旧版本的RXTX升级),请删除文件' librxtxSerial-2.1-x.so'在' / lib / 386'文件夹(或等效文件)。
下载' librxtxSerial.so'并将其安装在< lib / i386'或者' lib / amd64' Java VM的文件夹(例如,对于Ubuntu 11.04:' /usr/lib/jvm/java-6-sun-1.6.0.26/jre'对于RH9和Sun的Java 1.6.0_04: ' /usr/java/j2re1.6.0_04/lib/i386')。试试' bin'该文件的文件夹,如果' lib / i386'找不到(例如,对于IBM的Java 1.4.x)。确保' librxtxSerial'拥有所有人的执行权限。您可能需要将文件下载到临时位置(例如Desktop)并使用特权命令(或来自命令/终端的sudo)将其移动到目标位置。
您可能需要以root身份登录' root'并将您的jLog用户添加到拥有' / var / lock'目录和拥有要使用的串行端口(例如/ dev / ttyS0)的组。 Ubuntu 11.04不需要这样做。
这通常是(例如对于Red Hat 9和Fedora Core)用户锁定'和' uucp'分别
如果遇到问题,请尝试以root身份运行jLog,即查明问题是由访问不当还是文件安装不当引起的。"