imageio.read с Mac

Я столкнулся с очень плохой проблемой. У меня есть программа, которая пытается прочитать файл изображения, и я выполняю над этим какую-то операцию. Тот же код, который запускается из Windows, и когда я пытаюсь запустить тот же код в Apple Mac Mini (os: 10.7), он застревает. Я заметил, что когда компилятор переходит к строке ImageIO.read(file), он застревает (без исключений и ошибок ) передача правильного файла и файла не является нулевым. Может кто подскажет в чем может быть проблема?


person Stack    schedule 10.12.2012    source источник
comment
компилятор зависает? Это звучит маловероятно. Пожалуйста, прочитайте tinyurl.com/so-list   -  person Jon Skeet    schedule 10.12.2012
comment
частный BufferedImage srcIcon; try { srcIcon = ImageIO.read (новый файл (this.iFile)); }catch(Exception e){ logger.error(не удалось прочитать файл+this.iFile); } когда я запускаю приведенный выше код на Mac через среду оболочки, он выглядит как зависший, и когда я нажимаю ctr + c, запускаю какой-то процесс и закрываю файл   -  person Stack    schedule 10.12.2012
comment
Так что это не компилятор застревает, это ваша программа. Каково значение iFile?   -  person MadProgrammer    schedule 10.12.2012
comment
приведенный выше код работает из eclips, но не из среды оболочки   -  person Stack    schedule 10.12.2012
comment
значение iFile - полный путь к файлу   -  person Stack    schedule 10.12.2012


Ответы (1)


Проблема, вероятно, возникает из-за ваших аргументов виртуальной машины, это происходит, когда вы используете -XstartOnFirstThread.
Если этот аргумент включен, AWT не сможет загрузиться и заставит программу зависнуть. Чтобы решить эту проблему, вы можете добавить -Djava.awt.headless=true, чтобы указать AWT вообще не загружаться.

Источник: http://bugs.java.com/bugdatabase/view_bug.do?bug_id=8019496

person Nifil    schedule 25.01.2016
comment
Ваш ответ может быть улучшен, если вы подробно расскажете, почему это проблема с JRE и что делает аргумент vm для ее решения. - person hotzst; 25.01.2016