Ошибка создания скриншота с использованием Java Robot Class

Я попытался сделать снимок экрана с помощью класса Java-робота с NetBeans, как показано ниже

    try {
Rectangle screen = new Rectangle(Toolkit.getDefaultToolkit().getScreenSize());
BufferedImage capture  = new Robot().createScreenCapture(screen);

ImageIcon icon = new ImageIcon(capture);
jLabel1.setIcon(icon);


}catch(Exception  ex){
JOptionPane.showMessageDialog(null, ex);
}

, и я получил эту ошибку

Неустранимая ошибка была обнаружена среда выполнения Java: SIGSEGV (0xb) при pc = 0x00007f58931331d8, pid = 3254, tid = 0x00007f5890750700 версия JRE: среда выполнения Java (TM) SE (8.0_171-b11) (сборка 1.8.0_171-b11) Java VM: Java HotSpot (TM) 64-разрядная серверная виртуальная машина (смешанный режим 25.171-b11, сжатые операции linux-amd64, упс) Проблемный кадр: C [libawt_xawt.so + 0x421d8] ReadRegionsInList + 0x3b8 Записан дамп ядра. Местоположение по умолчанию: / home / sanaa / рабочий стол / сервер / RobotExample / core или core.3254

Есть идеи, что вызывает ошибку?

Примечание : я использовал один и тот же код в windows-32bit / Netbeans, и он работает

2
задан 7 May 2018 в 08:22

1 ответ

Похож на Вас, поражает отказ сегментации в Вашей Среде выполнения Java:

Я не могу сказать Вам точно, что Вы - проблема, всего лишь, я могу сказать Вам, что так или иначе, JRE пытался получить доступ, выделить, или освободить память, которая не принадлежала ему, как объяснено в официальной документации.

Начнитесь путем проверки, что у Вас есть последняя версия JRE, и что это - корректное для Вашей ОС (также удостоверяются, что 32 v 64 бита корректны).

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

0
ответ дан 2 December 2019 в 07:38

Другие вопросы по тегам:

Похожие вопросы: