Error after build when running JOGL Tutorial - java

I'm trying to figure out how to program OpenGL in Java, but when I ran the tutorial here, with all the libraries loaded (I think) correctly, as it was able to import the libraries, it gave me this weird error:
"C:\Program Files\Java\jdk1.7.0_25\bin\java" -Didea.launcher.port=7532 "-Didea.launcher.bin.path=C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 12.1.4\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.7.0_25\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\jce.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\jfxrt.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\resources.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\rt.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.7.0_25\jre\lib\ext\zipfs.jar;C:\Code\Java\Games\Rust\out\production\Rust;C:\Code\Java\Libraries\jogamp-all-platforms\jar\joal.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jocl.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\gluegen.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jogl-all.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\joal-test.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jogl-test.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\gluegen-rt.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\joal-android.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jogl-all-noawt.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jogl-all-mobile.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jogl-all-android.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\joal-test-android.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jogl-test-android.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\gluegen-rt-android.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\joal-natives-linux-i586.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jocl-natives-linux-i586.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\joal-natives-linux-amd64.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\joal-natives-linux-armv6.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jocl-natives-linux-amd64.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jocl-natives-linux-armv6.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\joal-natives-solaris-i586.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\joal-natives-windows-i586.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jocl-natives-solaris-i586.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jocl-natives-windows-i586.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\joal-natives-android-armv6.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\joal-natives-linux-armv6hf.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\joal-natives-solaris-amd64.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\joal-natives-windows-amd64.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jocl-natives-android-armv6.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jocl-natives-linux-armv6hf.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jocl-natives-solaris-amd64.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jocl-natives-windows-amd64.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jogl-all-natives-linux-i586.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jogl-all-natives-linux-amd64.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jogl-all-natives-linux-armv6.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\gluegen-rt-natives-linux-i586.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\joal-natives-macosx-universal.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jocl-natives-macosx-universal.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jogl-all-natives-solaris-i586.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jogl-all-natives-windows-i586.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\gluegen-rt-natives-linux-amd64.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\gluegen-rt-natives-linux-armv6.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jogl-all-natives-android-armv6.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jogl-all-natives-linux-armv6hf.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jogl-all-natives-solaris-amd64.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jogl-all-natives-windows-amd64.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\gluegen-rt-natives-solaris-i586.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\gluegen-rt-natives-windows-i586.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\gluegen-rt-natives-android-armv6.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\gluegen-rt-natives-linux-armv6hf.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\gluegen-rt-natives-solaris-amd64.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\gluegen-rt-natives-windows-amd64.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\jogl-all-natives-macosx-universal.jar;C:\Code\Java\Libraries\jogamp-all-platforms\jar\gluegen-rt-natives-macosx-universal.jar;C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 12.1.4\lib\idea_rt.jar" com.intellij.rt.execution.application.AppMain SimpleScene
Catched FileNotFoundException: C:\Code\Java\Libraries\jogamp-all-platforms\jar\gluegen-natives-windows-amd64.jar (The system cannot find the file specified), while addNativeJarLibsImpl(classFromJavaJar class com.jogamp.common.os.Platform, classJarURI jar:file:/C:/Code/Java/Libraries/jogamp-all-platforms/jar/gluegen.jar!/com/jogamp/common/os/Platform.class, nativeJarBaseName gluegen-natives-windows-amd64.jar): [ file:/C:/Code/Java/Libraries/jogamp-all-platforms/jar/gluegen.jar -> file:/C:/Code/Java/Libraries/jogamp-all-platforms/jar/ ] + gluegen-natives-windows-amd64.jar -> slim: jar:file:/C:/Code/Java/Libraries/jogamp-all-platforms/jar/gluegen-natives-windows-amd64.jar!/
Exception in thread "main" java.lang.UnsatisfiedLinkError: Can't load library: C:\Code\Java\Games\Rust\gluegen-rt.dll
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1846)
at java.lang.Runtime.load0(Runtime.java:795)
at java.lang.System.load(System.java:1061)
at com.jogamp.common.jvm.JNILibLoaderBase.loadLibraryInternal(JNILibLoaderBase.java:551)
at com.jogamp.common.jvm.JNILibLoaderBase.access$000(JNILibLoaderBase.java:64)
at com.jogamp.common.jvm.JNILibLoaderBase$DefaultAction.loadLibrary(JNILibLoaderBase.java:96)
at com.jogamp.common.jvm.JNILibLoaderBase.loadLibrary(JNILibLoaderBase.java:414)
at com.jogamp.common.os.DynamicLibraryBundle$GlueJNILibLoader.loadLibrary(DynamicLibraryBundle.java:388)
at com.jogamp.common.os.Platform$1.run(Platform.java:203)
at java.security.AccessController.doPrivileged(Native Method)
at com.jogamp.common.os.Platform.<clinit>(Platform.java:173)
at javax.media.opengl.GLProfile.<clinit>(GLProfile.java:82)
at SimpleScene.main(SimpleScene.java:8)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)
Process finished with exit code 1
Anyone know what's wrong with it?

I didn't cut out the unneeded files. You can see the list of files to use here.

I had the same problem.
In addition to adding the Jars files, you also need to set the dll directory when configure your interface.
At User Libraries window (here is Eclipse), expanding each one of the Jars, edit the native library location. When asked for the directory, go to the folder containing the .dlls files. (probably will be /lib)
I followed this tutorial: http://sites.google.com/site/justinscsstuff/jogl-tutorial-1
and this forum: http://forum.jogamp.org/Jar-reference-td3346099.html
Good lucky!

Rename file gluegen-rt-natives-windows-amd64.jar in the jogl installation directory to gluegen-natives-windows-amd64.jar. It's weird that for some reason the runtime tries to load file gluegen-natives-windows-amd64.jar instead of gluegen-rt-natives-windows-amd64.jar

Related

Unable to build project in Idea

There is a problem with building simple peace of code in Intellij Idea 14.
public class Main {
public static void main(String[] args) {
// write your code here
System.out.print("test");
} }
I'm stuck on following problem:
Error:Abnormal build process termination:
Build process started. Classpath: /C:/Program Files (x86)/JetBrains/IntelliJ IDEA Community Edition 14.1.5/lib/jps-launcher.jar;C:/Program Files/Java/jdk1.7.0_79/lib/tools.jar;/C:/Program Files (x86)/JetBrains/IntelliJ IDEA Community Edition 14.1.5/lib/optimizedFileManager.jar;C:/Program Files (x86)/JetBrains/IntelliJ IDEA Community Edition 14.1.5/lib/ecj-4.4.jar
Error connecting to 127.0.0.1:1081; reason: failed to create a child event loop
java.lang.IllegalStateException: failed to create a child event loop
at io.netty.util.concurrent.MultithreadEventExecutorGroup.<init>(MultithreadEventExecutorGroup.java:81)
at io.netty.channel.MultithreadEventLoopGroup.<init>(MultithreadEventLoopGroup.java:50)
at io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:72)
at io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:58)
at org.jetbrains.jps.cmdline.BuildMain.main(BuildMain.java:97)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.jetbrains.jps.cmdline.Launcher.main(Launcher.java:58)
Caused by: io.netty.channel.ChannelException: failed to open a new selector
at io.netty.channel.nio.NioEventLoop.openSelector(NioEventLoop.java:127)
at io.netty.channel.nio.NioEventLoop.<init>(NioEventLoop.java:119)
at io.netty.channel.nio.NioEventLoopGroup.newChild(NioEventLoopGroup.java:97)
at io.netty.channel.nio.NioEventLoopGroup.newChild(NioEventLoopGroup.java:31)
at io.netty.util.concurrent.MultithreadEventExecutorGroup.<init>(MultithreadEventExecutorGroup.java:77)
... 9 more
Caused by: java.io.IOException: Unable to establish loopback connection
at sun.nio.ch.PipeImpl$Initializer.run(PipeImpl.java:125)
at sun.nio.ch.PipeImpl$Initializer.run(PipeImpl.java:69)
at java.security.AccessController.doPrivileged(Native Method)
at sun.nio.ch.PipeImpl.<init>(PipeImpl.java:141)
Once I have compiled this code through command prompt, 'Main.class' file have been created.
Why this exception occurs in Idea?
There can be multiple causes of this. Can you try these solutions:
This might have to do with using Java 7 on windows 7 and the IP version prefs. A workaround might be to tell Java to prefer IPv4 via the JVM argument -Djava.net.preferIPv4Stack=true. You can set this config in intellij.
Or,I think it could be happening because of port limit. Can you add these 2 lines in your windows registry. "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\MaxUserPo‌​rt" (Type: DWORD; Value: 65500) "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters\TcpTimedW‌​aitDelay" (Type: DWORD; Value: 30 )
After I have reinstalled Windows, it became to work.
One point that I have noticed after installing on a clean OS, is that firewall demanded me to allow open port after Idea have been started.
It seems that the issue appeared to be in an antivirus software, which restricted Idea to open port and start build a project. May be antivirus added some rules in firewall, so that I was unable to build it even after antivirus was turned off.

Why am I missing /System/Library/Frameworks/JavaVM.framework/Libraries/libjawt.dylib on MacOSX?

I have been trying to install Java3D 1.5.2 on my Mac (OS 10.10). First I tried using the installer referenced in this answer by whiskeyspider. It installed the files, but I got an error when I tried to run a program. So I cleared out /Library/Java/Extensions and tried to install manually in ~/.local/lib, a directory I created previously, and just include the jars in my project's build path (Eclipse). Despite including the jars and native library locations (for the JOGL jars) I get the following error when I try to run the program:
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)
It turns out that the directory /System/Library/Frameworks/JavaVM.framework/Libraries/ doesn't exist. How can I fix this problem?
EDIT: I should probably also mention that I am using JDK 1.8.0_40 early access.
Java3D was abandoned by Sun Microsystems / Oracle in 2008. Java3D has been maintained by the JogAmp community since 2012. Yes, Java3D 1.6 is composed of several pre-releases but they work much better than Java3D 1.5.
My own tutorial explains in details how to install the very latest version of Java3D.

bin/hive giving issue with the errors

I have installed the hive using source and run ant package.
as per cwiki.apache.org document, I have added PATH var also i.e $HIVE_HOME and $PATH but running the command from base directory (bin/hive or hive)
It give the following error.
I have added the patch (HIVE-3606.1.patch) to resolve it but still it's not working.
Command to add patch:
hive-0.10.0-bin]$ patch -p0 < ~/Downloads/HIVE-3606.1.patch
To run Hive:
hive-0.10.0-bin]$ bin/hive
Exception in thread "main" java.lang.NoSuchFieldError: ALLOW_UNQUOTED_CONTROL_CHARS
at org.apache.hadoop.hive.ql.udf.generic.GenericUDTFJSONTuple.<clinit>(GenericUDTFJSONTuple.java:59)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:113)
at org.apache.hadoop.hive.ql.exec.FunctionRegistry.registerGenericUDTF(FunctionRegistry.java:545)
at org.apache.hadoop.hive.ql.exec.FunctionRegistry.registerGenericUDTF(FunctionRegistry.java:539)
at org.apache.hadoop.hive.ql.exec.FunctionRegistry.<clinit>(FunctionRegistry.java:472)
at org.apache.hadoop.hive.ql.session.SessionState.<init>(SessionState.java:202)
at org.apache.hadoop.hive.cli.CliSessionState.<init>(CliSessionState.java:86)
at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:635)
at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:613)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.hadoop.util.RunJar.main(RunJar.java:156)
Can anyone help here?
It's most probably because your Hadoop uses a different (older) version of Jackson libraries than Hive. As a quick workaround you can replace jackson-core-asl-X-X-X.jar and jackson-mapper-asl-X.X.X.jar in $HADOOP_HOME/lib with the newer ones in $HIVE_HOME/lib
Its because you are working with old version of Hadoop.
If you have Hadoop, its better to compile the source code yourself with the following command for old version of Hadoop:
$ svn co http://svn.apache.org/repos/asf/hive/trunk hive
$ cd hive
$ mvn clean install -Phadoop-2,dist
Check this link for more info: https://cwiki.apache.org/confluence/display/Hive/GettingStarted
Then, change the jackson* file names in $HADOOP_HOME/lib and add an .old postfix to them (Its a good practice not to delete them, as we may want them in future):
$ mv jackson-core-asl-1.0.1.jar jackson-core-asl-1.0.1.jar.old
$ mv jackson-mapper-asl-1.0.1.jar jackson-mapper-asl-1.0.1.jar.old
You can find the new jackson compiled files somewhere around Hive's packaging folder, mine is in:
packaging/target/apache-hive-0.14.0-SNAPSHOT-bin/apache-hive-0.14.0-SNAPSHOT/bin/hcatalog/share/webhcat/svr/lib
If you can't find it, its ok. use the following command in your hive directory.
$ find ./ -iname "*jackson*"
It will show you all the jackson* files that it can find. Then go to that specific folder that contains them and copy all of them to the $HADOOP_HOME/lib (currently we may just need the "jackson-core-*" but we copy all for future use):
$ cp jackson* $HADOOP_HOME/lib
Ask if you have more enquiries.

Getting Java3D to work in Eclipse

I am trying to get J3D to work in Eclipse and have read forum after forum but can't seem to fix my problem. I am using ubuntu 11.10
I have done this:
0) unzipped j3d-1_5_2-linux-i586 in home/j3d directory then added i386 folder to usr/lib/jvm/java-6-openjdkjre/lib/i386
1) Window--> Preferences--> User Libraries --> New and added the three .jar files (j3dcore.jar, j3dutils.jar, vecmath.core)
2) Added a native library location to point to usr/lib/jvm/java-6-openjdkjre/lib/i386 where the .so files are
Some sources say try adding the .jar files to your Classpath Variable which didn't fix the problem for me.
I keep getting
Exception in thread "main" java.lang.UnsatisfiedLinkError: /usr/lib/jvm/java-6-openjdk/jre/lib/amd64/libj3dcore-ogl.so: /usr/lib/jvm/java-6-openjdk/jre/lib/amd64/libj3dcore-ogl.so: wrong ELF class: ELFCLASS32 (Possible cause: architecture word width mismatch)
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1750)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1667)
at java.lang.Runtime.loadLibrary0(Runtime.java:840)
at java.lang.System.loadLibrary(System.java:1047)
at javax.media.j3d.NativePipeline$1.run(NativePipeline.java:231)
at java.security.AccessController.doPrivileged(Native Method)
at javax.media.j3d.NativePipeline.loadLibrary(NativePipeline.java:200)
at javax.media.j3d.NativePipeline.loadLibraries(NativePipeline.java:157)
at javax.media.j3d.MasterControl.loadLibraries(MasterControl.java:987)
at javax.media.j3d.VirtualUniverse.(VirtualUniverse.java:299)
at Hello3d.(Hello3d.java:13)
at Hello3d.main(Hello3d.java:27)
I had the same problems. Most tutorials tell you to assign an new library, but i mixed the Java3D files with the JDK files and re installed eclipse. If this doesn't work use net Beans.

LibraryNotFoundException while running java code that invokes dlls

I have written a code that requires 2 dll's at runtime.I have those dll files in C:\Program Files\Java\jdk1.6.0_01\jre\bin.
I have set the environment variable PATH accordingly.
It compiled successfully and then while running it gives the following error:
Exception in thread "main" java.lang.ExceptionInInitializerError
at teamdev.jxcapture.Capture.captureActiveWindow(Unknown Source)
at ppb.activewindow.execute(activewindow.java:24)
at ppb.activewindow.main(activewindow.java:68)
Caused by: com.jniwrapper.LibraryNotFoundException: Cannot find JNIWrapper nativ
e library (jniwrap.dll) in java.library.path: C:\Program Files\Java\jdk1.6.0_01\
jre\bin\jniwrap.dll
Could anybody please help me to resolve this problem?
The value of java.library.path should be the directory containing the DLLs, not the filename of the DLLs themselves. It looks like your java.library.path is set to
C:\Program Files\Java\jdk1.6.0_01\jre\bin\jniwrap.dll
instead of
C:\Program Files\Java\jdk1.6.0_01\jre\bin
It looks like the DLL is not being found on the Java Library Path. See this - http://www.inonit.com/cygwin/jni/helloWorld/load.html
Try moving JDK to a path without spaces.

Categories