JOGL не работает после переустановки ubuntu

у меня был полностью рабочий проект в ubuntu 9 с eclipse. Теперь я установил Ubuntu 10.10, вернул резервную копию, скачал Eclipse и попытался запустить проект.

Папка проекта вообще не менялась! Но теперь это не работает:

Исключение в потоке "AWT-EventQueue-0" java.lang.UnsatisfiedLinkError: нет Glugen-RT в java.library.path

Если я перехожу к «свойствам проекта> путь сборки java> библиотеки», присутствуют Glugen-rt.jar и jogl.jar, и у меня нет ошибки компиляции («import javax.media.opengl.GLAutoDrawable;» не имеет ошибки, поэтому классы загружаются правильно, я думаю)

Я тоже пытался установить JOGL из Synaptic.

Вот полная трассировка стека ошибок:

я нашел проблему!


person nkint    schedule 06.07.2011    source источник


Ответы (2)


ЗАТМЕНИЕ СОХРАНЯЕТ АБСОЛЮТНЫЙ ПУТЬ ВНЕШНИХ JARS

В свойствах проекта eclipse -> Путь сборки Java перейдите в свою библиотеку, найдите Glugen-rt.jar, разверните его, щелкните «Местоположение собственной библиотеки» и введите расположение собственных библиотек, поставляемых вместе с загрузкой JOGL.

после переустановки Ubuntu я изменил структуру своей домашней папки.

Это помогло мне понять, как заставить Eclipse использовать библиотеки обработки (из http://processing.org ) с помощью OpenGL. Я знаю, что у обработки есть собственный редактор, но он не очень многофункциональный.

person nkint    schedule 06.07.2011
comment
jogl.all.jar был переименован в jogl-all.jar в JOGL 2. - person gouessej; 06.04.2014

Итак, у меня была эта ошибка:

поэтому мне пришлось щелкнуть правой кнопкой мыши файл jar jogl.all.jar в «Проводнике проектов», щелкнуть «Свойства», щелкнуть «Собственная библиотека» и установите «Путь к местоположению».

Exception in thread "Animation Thread" java.lang.UnsatisfiedLinkError: no gluegen-rt in java.library.path

Мой путь к местоположению был:

После этого заработало идеально!

/home/username/Desktop/processing-2.0a4/modes/java/libraries/opengl/library/linux32

На самом деле вам не нужно редактировать местоположение собственной библиотеки при использовании JOGL 2, если вы помещаете файлы JAR, содержащие собственные библиотеки, в тот же каталог, что и файлы JAR, содержащие библиотеки Java.

person user1201247    schedule 10.02.2012
comment
Исключение в потоке "AWT-EventQueue-0" java.lang.UnsatisfiedLinkError: нет Glugen-RT в java.library.path в java.lang.ClassLoader.loadLibrary(ClassLoader.java:1681) в java.lang.Runtime.loadLibrary0( Runtime.java:840) в java.lang.System.loadLibrary(System.java:1047) в com.sun.gluegen.runtime.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:102) в com.sun.gluegen.runtime.NativeLibLoader .access$000(NativeLibLoader.java:51) в com.sun.gluegen.runtime.NativeLibLoader$1.run(NativeLibLoader.java:70) в java.security.AccessController.doPrivileged(собственный метод) в com.sun.gluegen.runtime .NativeLibLoader.loadGlueGenRT(NativeLibLoader.java:68) на com.sun.gluegen.runtime.NativeLibrary.ensureNativeLibLoaded(NativeLibrary.java:399) на com.sun.gluegen.runtime.NativeLibrary.open(NativeLibrary.java:163) на com.sun.gluegen.runtime.NativeLibrary.open(NativeLibrary.java:129) в com.sun.opengl.impl.x11.DRIHack.begin(DRIH ack.java:109) в com.sun.opengl.impl.x11.X11GLDrawableFactory.(X11GLDrawableFactory.java:99) в java.lang.Class.forName0(собственный метод) в java.lang.Class.forName(Class.java :186) в javax.media.opengl.GLJPanel.paintComponent(GLJPanel. java:488) в javax.swing.JComponent.paint(JComponent.java:1029) в javax.swing.JComponent.paintChildren(JComponent.java:866) в javax.swing.JComponent.paint(JComponent.java:1038) в javax.swing.JComponent.paintChildren(JComponent.java:866) в javax.swing.JComponent.paint(JComponent.java:1038) в javax.swing.JComponent.paintChildren(JComponent.java:866) в javax.swing.JComponent .paint(JComponent.java:1038) в javax.swing.JComponent.paintChildren(JComponent.java:866) в javax.swing.JComponent.paint(JComponent.java:1038) в javax .swing.JComponent.paintChildren(JComponent.java:866) в javax.swing.JComponent.paint(JComponent.java:1038) в javax.swing.JLayeredPane.paint(JLayeredPane.java:581) в javax.swing.JComponent. paintChildren(JComponent.java:866) в javax.swing.JComponent.paintToOffscreen(JComponent.java:5145) в javax.swing.BufferStrategyPaintManager.paint(BufferStrategyPaintManager.java:302) в javax.swing.RepaintManager.paint(RepaintManager.java :1145) в javax.swing. JComponent.paint(JComponent.java:1015) в java.awt.GraphicsCallback$PaintCallback.run(GraphicsCallback.java:39) в sun.awt.SunGraphicsCallback.runOneComponent(SunGraphicsCallback.java:78) в sun.awt.SunGraphicsCallback.runComponents (SunGraphicsCallback.java:115) в java.awt.Container.paint(Container.java:1844) в javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:751) в javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java: 696) в javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:676) в javax.swing.RepaintManager.access$700(RepaintManager.java:57) в javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1550) в java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:226) в java.awt.EventQueue.dispatchEventImpl(EventQueue.java:647) в java.awt.EventQueue.access$000(EventQueue.java:96) в java .awt.EventQueue$1.run(EventQueue.java:608) в java.awt.EventQueue$1.run(EventQueue.java:606) в java.security.AccessController.doPrivileged(собственный метод) в java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:105) в java.awt.EventQueue. dispatchEvent(EventQueue.java:617) в java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275) в java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200) в java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThreadThread :190) в java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185) в java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177) в java.awt.EventDispatchThread.run(EventDispatchThread.java:138) - person gouessej; 06.04.2014