Jump to content

    

Запуск JavaFX на BeagleBoard

Уважаемые коллеги!

Ситуация следующая:

У меня есть javafx приложение разработанное под JDK 1.7 и нормально работающее под Windows. Мне нужно запустить его на Beagleboard Mx (конкретная ОС значение не имеет, главное чтоб работало).

Действия:

1) Я использовал ОС Angstrom. Образ для SD карты скачал от сюда http://beagleboard.org/latest-images

2) Angstrom нормально запустился с графической средой.

3) Для установки java я действовал по этому руководству http://beagleboard.org/project/java/

4) Дистрибутив java скачал от сюда http://www.oracle.com/technetwork/java/jav...ds-2187468.html

5) Запустил свое приложение из терминала в графической среды и получил окно с сообщением, что нужно обновить платформу и кнопокй Обновить. Но при нажатии на кнопку получил ошибку:

java.lang.UnsupportedOperationException: Desktop API is not supported on the current platform

at java.awt.Desktop.getDesktop(Desktop.java:144)

at com.javafx.main.NoJavaFXFallback.actionPerformed(NoJavaFXFallback.java:141)

at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)

at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)

at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)

at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)

at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.jav

a:252)

at java.awt.Component.processMouseEvent(Component.java:6516)

at javax.swing.JComponent.processMouseEvent(JComponent.java:3320)

at java.awt.Component.processEvent(Component.java:6281)

at java.awt.Container.processEvent(Container.java:2229)

at java.awt.Component.dispatchEventImpl(Component.java:4872)

at java.awt.Container.dispatchEventImpl(Container.java:2287)

at java.awt.Component.dispatchEvent(Component.java:4698)

at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)

at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)

at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)

at java.awt.Container.dispatchEventImpl(Container.java:2273)

at java.awt.Component.dispatchEvent(Component.java:4698)

at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)

at java.awt.EventQueue.access$200(EventQueue.java:103)

at java.awt.EventQueue$3.run(EventQueue.java:694)

at java.awt.EventQueue$3.run(EventQueue.java:692)

at java.security.AccessController.doPrivileged(Native Method)

at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)

at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)

at java.awt.EventQueue$4.run(EventQueue.java:708)

at java.awt.EventQueue$4.run(EventQueue.java:706)

at java.security.AccessController.doPrivileged(Native Method)

at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)

at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)

at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242

)

at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)

at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150

)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)

at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

 

6) Создал простое приложение на javafx для теста, и попробовал запустить его. Получил такое же сообщение.

 

Так же при настройке я столкнулся с побочными проблемами которые можно обойти, но возможно их возникновение даст подсказку как решить основную проблему.

Побочные проблемы:

1) Пути JAVA_HOME и PATH приходится экспортировать каждый раз, они не сохраняются после перезагрузки и сбрасываются даже при подключении по терминалу COM порта, если были прописаны в терминале графической среды и наоборот.. Мне даже показалось, что они сбрасываются после некоторых действий в системе без перезагрузки. Таких как извлечение флэшки например. Возможно я задаю эти переменные некорректно.

 

2) При попытки запуска приложения через терминал через COM-порту java требует задать монитор по умолчанию, но если я задаю DISPLAY=:0 или DISPLAY=:1. Она не обнаруживает монитор. Я не знаю как правильно настроить сервер мониторов.

 

3) Периодически терминал в графической среде начинает отвечать на все команды not found, но перезапуск терминала решает проблему.

 

Буду благодарен любому совету!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this