[英]Redhawk crashing with Java error - Killed by signal 6, SIGABRT
Centos 6.6
Redhawk 1.10
我可以在Redhawk中执行一系列操作(编程USRP的IP),这会导致程序崩溃并出现以下错误:
资料来源:java-1.7.0-openjdk
问题:进程/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.71.x86_64/jre/bin/java被信号6(SIGABRT)杀死
有关如何防止这种情况的任何想法?
另外,我对Redhawk和Linux一般都很新,所以请ELI5。
在某个方面比我更聪明的主题:
这是一个刚刚推出CentOS6.6的问题,因为它使用了比CentOS6.5更新版本的gtk2。 Eclipse检测到这一点并错误地假设它可以使用cairo图形API,该API在预期版本中不可用或不可用。 它实际上是v1.10和v1.9系列REDHAWK IDE使用的Eclipse版本中的一个错误。 有关该问题的信息可以在这个eclipse论坛上找到。 Eclipse已经在其最新的代码库中解决了这个问题。
对1.10和1.9用户最简单的修复是应用论坛帖子中提到的修复。 导航到包含eclipse可执行文件(REDHAWK IDE可执行文件)的目录,应该有一个名为“eclipse.ini”的配置文件。 将以下参数添加到声明的选项列表中:
-Dorg.eclipse.swt.internal.gtk.cairoGraphics = FALSE
这将禁用cairo图形的使用,这些图形首先没有被使用。
我发现发生此错误是因为我正在对想要生成两个单独的JVM实例的进程进行远程调试。 一个执行测试运行器,一个执行实际测试。 如果您使用以下命令运行程序:
export _JAVA_OPTIONS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=7002"
实例都尝试使用端口7002并且出现信号中止,因为7002正在用于第二个实例。
相反,你可以使用:
export _JAVA_OPTIONS="agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=7002"
通过将suspend设置为yes,可以防止实例同时运行。 虽然您必须记住两次连接远程调试器以获取要执行的单独实例。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.