2010-12-14 7 views
2

MacでJava3Dプロジェクトをコンパイルして実行しようとしていて、何か問題があります。私はEclipseを使用しています。このプログラムは古いバージョンのJava3Dに依存していますが、Eclipseで正しいJarsを追加しても、代わりにデフォルトのシステムの場所を探しています。Macで新しいクラスでJava System Libraryを無効にする

Eclipseで私のプログラムを実行しているとき、私はこの問題を取得する:スレッド "AWT-EventQueueの-0" java.lang.NoSuchMethodErrorの中

例外:javax.media.j3d.BranchGroup.pickAllSorted(IILjavax /メディア/ j3d/PickShape;)[Ljavax/media/j3d/PickInfo; BranchGroup.pickAllSortedは、MacのデフォルトのJREシステム・ライブラリー(JVM 1.6.0)には存在しませんが、それが存在しない

com.sun.j3d.utils.pickfast.PickTool.pickAllSorted(PickTool.java:410)で 正しいJAVA3D jarファイルに入れてください。私はそれらを私のbuildpathに追加しました。そしてそれらはProperties-Java Build Path-OrderとExportのJREシステムライブラリの上で参照されます。これは解決策であるはずですが、うまくいかないようです。

私はしばらく試してきましたが、動作させることはできません。私が持っていた可能性のあるリードは、.jarsを/ Library/Java/Extensionsに置くことでした。私がこれを行うと、代わりにOpenGLエラーが発生し、プログラムがまったく開きませんが、私の思うようなことをしています。

ありがとうございました。

答えて

3

Eclipseでは、Run > Run Configurations > Your Main > Arguments > VM Argumentsに移動し、-Xbootclasspath/p:newjava3d.jarを追加します。これによりnewclass3d.jarがbootclasspathの前に追加されるので、関連するクラスがそこからロードされます。 -Xbootclasspath/P:j3dcore.jar(または:j3dcore.java)で 結果:スレッドで 例外 "AWT-EventQueueの-0" java.lang.NoClassDefFoundErrorの

+0

VM引数に次の行を追加します:com/sun/opengl/util/BufferUtil \t(javax.media.j3d.JoglPipeline)。 (JoglPipeline.java:5048) –

+0

Java3Dディストリビューションに付属するREADME-unzip.htmlファイルに記載されているように、JOGLをインストールする必要があります。最新のJava3Dディストリビューションは、https://java3d.dev.java.net/binary-builds.html –

+0

で見つけることができます。そのREADMEには記載されていませんが、ありがとうございます! –

0

プログラムを起動するときに、-Xbootclasspathまたは-Xbootclasspath/aスイッチのいずれかを使用して、クラスパスにJARファイルを追加してみてください。 See the java tool documentation.

関連する問題