2014-12-23 5 views
1

Я пытался установить Java3D 1.5.2 на свой Mac (OS 10.10). Сначала я попытался использовать установщик, указанный в this answer, по whiskeyspider. Он установил файлы, но у меня возникла ошибка, когда я попытался запустить программу. Поэтому я очистил/Library/Java/Extensions и попытался установить вручную в ~/.local/lib, каталог, который я создал ранее, и просто включил банки в путь сборки проекта (Eclipse). Несмотря включая банки и родные места библиотеки (для банок JOGL) Я получаю следующее сообщение об ошибке при попытке запустить программу:Почему я отсутствую /System/Library/Frameworks/JavaVM.framework/Libraries/libjawt.dylib на MacOSX?

Exception in thread "J3D-Renderer-1" java.lang.UnsatisfiedLinkError: /Users/brianmc7/.local/lib/jogl/lib/libjogl_awt.jnilib: dlopen(/Users/brianmc7/.local/lib/jogl/lib/libjogl_awt.jnilib, 1): Library not loaded: /System/Library/Frameworks/JavaVM.framework/Libraries/libjawt.dylib 
    Referenced from: /Users/brianmc7/.local/lib/jogl/lib/libjogl_awt.jnilib 
    Reason: image not found 
    at java.lang.ClassLoader$NativeLibrary.load(Native Method) 
    at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1929) 
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1851) 
    at java.lang.Runtime.loadLibrary0(Runtime.java:870) 
    at java.lang.System.loadLibrary(System.java:1119) 
    at com.sun.opengl.impl.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:189) 
    at com.sun.opengl.impl.NativeLibLoader.access$000(NativeLibLoader.java:49) 
    at com.sun.opengl.impl.NativeLibLoader$DefaultAction.loadLibrary(NativeLibLoader.java:80) 
    at com.sun.opengl.impl.NativeLibLoader.loadLibrary(NativeLibLoader.java:103) 
    at com.sun.opengl.impl.NativeLibLoader.access$200(NativeLibLoader.java:49) 
    at com.sun.opengl.impl.NativeLibLoader$2.run(NativeLibLoader.java:132) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at com.sun.opengl.impl.NativeLibLoader.loadAWTImpl(NativeLibLoader.java:118) 
    at com.sun.opengl.impl.JAWT.getJAWT(JAWT.java:91) 
    at com.sun.opengl.impl.macosx.MacOSXOnscreenGLDrawable.lockSurface(MacOSXOnscreenGLDrawable.java:144) 
    at com.sun.opengl.impl.macosx.MacOSXOnscreenGLContext.makeCurrentImpl(MacOSXOnscreenGLContext.java:57) 
    at com.sun.opengl.impl.GLContextImpl.makeCurrent(GLContextImpl.java:134) 
    at javax.media.j3d.JoglPipeline$QueryCanvas.doQuery(JoglPipeline.java:9049) 
    at javax.media.j3d.JoglPipeline.getBestConfiguration(JoglPipeline.java:8797) 
    at javax.media.j3d.Renderer.doWork(Renderer.java:514) 
    at javax.media.j3d.J3dThread.run(J3dThread.java:275) 

Оказывается, что каталог /System/Library/Frameworks/JavaVM.framework/Библиотеки/не существует. Как я могу исправить эту проблему?

EDIT: Возможно, мне также следует упомянуть, что я пользуюсь ранним доступом JDK 1.8.0_40.

+0

Скорее следуйте этим инструкциям вместо использования устаревшей версии Java3D: http://jogamp.org/wiki/index.php/Downloading_and_installing_Java3D – gouessej

+0

Спасибо, @gouessej, это сработало! Вы уверены, что 1.5.x является «устаревшим»? Когда я запускаю свою программу с помощью 1.6, я вижу '3D [dev] 1.6.0-pre11-daily-experimental daily', напечатанный на stderr, предполагая, что (как я читал в другом месте) 1.6.x является предварительным выпуском. Кроме того, я нашел [сайт, к которому они привязаны] (https://gouessej.wordpress.com/2012/08/01/java-3d-est-de-retour-java-3d-is-back/) более полезно, тем более, что он говорит, какие банки импортировать в Eclipse. Но, если вы раскроете свой комментарий в ответ, я приму это! –

ответ

1

Java3D был abandoned by Sun Microsystems/Oracle in 2008. Java3D поддерживается сообществом JogAmp с 2012 года. Да, Java3D 1.6 состоит из нескольких предварительных выпусков, но они работают намного лучше, чем Java3D 1.5.

My own tutorial подробно объясняет, как установить самую последнюю версию Java3D.