使用Jzy3d / JOGL的OSGi路径错误(找不到gluegen-rt)

时间:2012-02-02 16:09:27

标签: java opengl osgi

我目前正在开发一些OSGi应用程序,我想使用库Jzy3d来显示3D图形。基本上,这个库利用了opengl for java(JOGL?)。

我添加了一个特定的包,包括运行Jzy3d和导出所有org.jzy3d所需的所有jar。*。 从另一个包中,我尝试使用该库,但在运行时,执行Chart chart = new Chart();会引发以下异常:

java.lang.UnsatisfiedLinkError: no gluegen-rt in java.library.path

一开始,我认为这只是由于不同bundle的不同类加载器所以我将失败的行移到了我现在从另一个bundle调用的库bundle中的“Util”类中。 然而,它没有改变任何东西:我总是遇到与gluegen-rt相同的错误。

我已经检查过gluegen-rt.jar是否在“library bundle”的bundle类路径中。它也包含在二进制构建中(与所有其他需要的jar一样)。

3 个答案:

答案 0 :(得分:2)

java.library.path是本机库的路径,因此我假设您未设置它或某些库丢失。检查JOGL对您的操作系统和体系结构所需的本机库,并提供它们的路径。

答案 1 :(得分:1)

另一个(也许是更好的)建议:从jogl2 rc5开始(或者可能更早),本机库包装在罐子里。我可以在我的计算机上运行Windows jar,而无需为dll设置任何运行时目录,因此如果您没有时间等待jzy3d更新,您可以从http://jogamp.org/deployment/archive/rc/v2.0-rc5/创建自己的jogl包。请参阅相关讨论:http://forum.jogamp.org/FileNotFoundException-td3654307.html

答案 2 :(得分:0)

www.jzy3d.org的下载页面上有关于eclipse开发人员的建议。或者,您可以删除jre / bin文件夹中的本机库