2014-11-18 2 views
1

Centos 6,6Redhawk сбой с ошибкой Java - Убит сигнала 6, SIGABRT

Redhawk 1,10

я могу сделать ряд операций (запрограммируйте IP из USRP) в Redhawk, что неоднократно вызвать программу авария со следующей ошибкой:

Источник: 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.

ответ

2

За кого-то способ умнее меня по теме:

This is an issue that has just come up with the release of CentOS6.6 as it uses a newer version of gtk2 than CentOS6.5. Eclipse detects this and erroneously assumes it can use the cairo graphics API which is either not available or not at the expected version. It's actually a bug within the Eclipse Version used by the v1.10 and v1.9 series REDHAWK IDE. Information about the issue can be found on this eclipse forum. Eclipse has since fixed the issue within it's latest code base.

The easiest fix for 1.10 and 1.9 users is to apply the fix mentioned within the forum post. Navigate to the directory which contains your eclipse executable (REDHAWK IDE executable) and there should be a configuration file called "eclipse.ini". Add the following parameter to the list of declared options:

-Dorg.eclipse.swt.internal.gtk.cairoGraphics=false

This will disable the use of cairo graphics, which were not being used in the first place.

1

Я обнаружил, что произошло это ошибка, потому что я делал удаленную отладку на процессе, который хотел, чтобы породить два отдельных экземпляра виртуальной машины Java. Один, который выполнил тестовый бегун и тот, который выполнил фактический тест. Если вы запустили программу с с:

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"

Устанавливая приостановить Да, предотвратить случаи из работающих одновременно. Хотя вам нужно помнить, что нужно дважды подключить удаленный отладчик, чтобы выполнить отдельные экземпляры.

Смежные вопросы