[Source] troubleshooting Netbeans configuration and Xj3D build_nps.xml under 64-bit Windows 7

Norbraten, Terry (CIV) tdnorbra at nps.edu
Wed Dec 7 09:05:37 PST 2011


We need to launch the browser (the JVM) from the directory: apps/browser

Hence the path to the natives.dir should be:

# Default case for Mac (universal)
mac.library.path=../../${natives.dir}
win.library.path=../../${natives.dir}/${os.architecture.bitness}/win
linux.library.path=../../${natives.dir}/${os.architecture.bitness}/linux


Try this adjustment and the application should be able to see the jogl
natives (and the rest)...


R/

Terry

On 12/7/11 5:49 AM, "Don Brutzman" <brutzman at nps.edu> wrote:

>cc: source
>
>Hi Terry, thanks for continued help with troubleshooting Netbeans 7.01
>configuration and building Xj3D under 64-bit Windows 7.  Last night
>I got netbeans to work under 64-bit following a reboot, but still not
>building Xj3D properly.  Summary follows.
>
>I did not find a Windows 64-bit version of latest Java SE bundling
>Netbeans installers at netbeans.org or regular Java download site.
>Only one version of Netbeans for Windows was offered.
>
>I did install 64-bit Java.  The two JVM platforms each land at
>	C:\Program Files\Java\jdk1.6.0_29
>	C:\Program Files (x86)\Java\jdk1.6.0_29
>
>Command console:
>	C:\Users\brutzman>java -version
>	java version "1.6.0_29"
>	Java(TM) SE Runtime Environment (build 1.6.0_29-b11)
>	Java HotSpot(TM) 64-Bit Server VM (build 20.4-b02, mixed mode)
>
>- in Netbeans, added 64-bit Java (first of the two preceding)
>via Tools > Java Platforms
>
>- added Netbeans plugin for System Properties, which is turned on
>	via the Netbeans menu Window > SysPropView
>
>- disable X3D-Edit and Xj3D Wrapper plugins
>- edit file C:\Program Files (x86)\NetBeans 7.0.1\etc\netbeans.conf
>	changing line 19
>		# Default location of JDK, can be overridden by using --jdkhome <dir>:
>		netbeans_jdkhome="C:\Program Files (x86)\Java\jdk1.6.0_29"
>	to
>		# Default location of JDK, can be overridden by using --jdkhome <dir>:
>		netbeans_jdkhome="C:\Program Files\Java\jdk1.6.0_29"
>
>- restart Netbeans.  (this is the step that hung earlier when Xj3D
>	Wrapper plugin was still activated).  worked.
>
>- System Properties plugin window confirmed proper Netbeans bitness:
>	sun.arch.data.model 64
>
>- checked which hotspot is running (server version is preferred?)
>	sun.management.compiler HotSpot 64-Bit Tiered
>
>
>So far so good.  OK, now on to building Xj3D.   First the NPS branch:
>
>- _build compile_ and _build build_ are successful
>
>-  consoles show that ODE does seem to be loading OK:
>
>> 	Dec 6, 2011 9:08:15 PM org.odejava.Odejava <clinit>
>> 	INFO: OdeJava natives version 0.3.4 loaded.
>
>- _build dist_ gets very far actually, but then problems emerge.
>
>- _build javadoc_ fails:
>	
>> Deleting directory C:\Xj3D.nps\docs\javadoc
>> Created dir: C:\Xj3D.nps\docs\javadoc
>> Generating Javadoc
>> Javadoc execution
>> C:\Xj3D.nps\build_nps.xml:850: Javadoc failed:
>> java.io.IOException: Cannot run program "C:\Program
>>Files\Java\jdk1.6.0_29\bin\javadoc.exe": CreateProcess error=206, The
>>filename or extension is too long
>
>- _build run.ogl.browser_ and _build run.example.file_ both fail due to
>opengl
>Exception in thread "main" java.lang.UnsatisfiedLinkError: no jogl in
>java.library.path
>
>- _build run_ also fails due to opengl
>
>> Exception in thread "AWT-EventQueue-0" java.lang.RuntimeException:
>>java.lang.IllegalArgumentException: argument type mismatch
>> 	at 
>>com.sun.opengl.impl.JAWT_DrawingSurfaceInfo.newPlatformInfo(JAWT_DrawingS
>>urfaceInfo.java:86)
>> 	at 
>>com.sun.opengl.impl.JAWT_DrawingSurfaceInfo.platformInfo(JAWT_DrawingSurf
>>aceInfo.java:52)
>> 	at 
>>com.sun.opengl.impl.windows.WindowsOnscreenGLDrawable.lockSurface(Windows
>>OnscreenGLDrawable.java:189)
>> 	at 
>>com.sun.opengl.impl.windows.WindowsOnscreenGLContext.makeCurrentImpl(Wind
>>owsOnscreenGLContext.java:57)
>> 	at 
>>com.sun.opengl.impl.GLContextImpl.makeCurrent(GLContextImpl.java:134)
>> 	at 
>>com.sun.opengl.impl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:182)
>> 	at 
>>javax.media.opengl.GLCanvas.maybeDoSingleThreadedWorkaround(GLCanvas.java
>>:412)
>
>- i am finding three jogl .dlls in the Xj3D directory natives/x86_64/win/
>	as expected
>
>- build_nps.xml includes following properties but neither seems correct
>and neither
>	seem to get used elsewhere in build_nps.xml
>
>    <property name="jogl.lib.dir" value="../jogl/lib"/>
>    <property name="joal.lib.dir" value="../joal/lib"/>
>
>- added (and checked in) output diagnostics message to target
>name="initializeWindows" etc.
>	<echo message="win_runarguments=${win_runarguments}"/>
>
>	which revealed a suspicious path to natives directory:
>> win_runarguments=-Xmx1g -XX:-UseParallelGC -XX:-UseConcMarkSweepGC
>>-Dorg.web3d.vrml.renderer.common.nodes.shape.useTextureCache=true
>>-Dsun.java2d.noddraw=true -Djava.library.path=../../natives/x86_64/win
>
>- then found several inconsistent references to natives directory:
>
>   590run.ogl.browser:
>         <jvmarg line="${run.args}
>-Djava.library.path=../${natives.dir}"/>
>   631 run.example.file:
>         <jvmarg line="${run.args}
>-Djava.library.path=../../../${natives.dir}"/>
>   658 run.simserver:
>         <jvmarg line="${run.args}
>-Djava.library.path=../../../${natives.dir}"/>
>
>- found definition for natives.dir in build.properties:
>	
>	# Convenience directory for all platform natives
>	natives.dir=natives
>
>- not sure why the preceding jvmarg paths are different, would expect
>	that simple ${natives.dir} by itself would work.
>	tried removing ../ (and other variations) but no joy.
>
>... so that is the current status of the apparatus.  apparent
>Win64 problem is bad path or bad binaries for jogl .dll files.
>
>all the best, Don
>-- 
>Don Brutzman  Naval Postgraduate School, Code USW/Br
>brutzman at nps.edu
>Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA
>+1.831.656.2149
>X3D graphics, virtual worlds, navy robotics
>http://faculty.nps.edu/brutzman




More information about the Source mailing list