[Gvsig_english] gvSIG and Java on Mac OS X

Mijail hmijail at gmail.com
Thu Oct 16 17:06:27 CEST 2008


Benjamin,

You should NOT touch the symlinks in the JavaVM framework unless you  
have a very good reason and understanding of why. Usually you should  
just use the Java Preferences app pointed to by Henning.

And in your case, using SoyLatte, you should be already independent of  
that.

Which I guess is what you have run into when you say that gvSIG  
chooses Java 1.5. I don't know how SoyLatte gets installed, but I  
don't expect it to weave itself into the OS X Java installation,  
without which the JavaApplicationStub inside gvSIG.app/Contents/MacOS  
(which can be in part controlled with the Java Preferences.app) will  
not go anywhere near your SoyLatte.

So I guess your shell script is the way to go to use SoyLatte.

So what would I guess the problem is? We know CRS is not working in  
PowerPC, BUT its exact failure mode was that it caused an exception  
when you tried to load a layer. So you should be able to at least show  
the gvSIG desktop and play a bit with it, even with the CRS problem  
(which you can fix by just taking away the CRS extension, as Agustin  
demonstrated).

To me, it certainly looks like it is failing to find the CRS  
extension. Not sure though.
I would suggest checking the classpath, since the one you are using  
looks different to the one we are using in OS X. You can check it in  
the file gvSIG.app/Contents/Info.plist, which is XML, and which  
contains this classpath:
       <key>ClassPath</key>
       <array>
         <string>andami.jar</string>
         <string>lib/log4j-1.2.8.jar</string>
         <string>lib/beans.jar</string>
         <string>lib/gvsig-i18n.jar</string>
         <string>lib/iver-utiles.jar</string>
         <string>lib/castor-0.9.5.3-xml.jar</string>
         <string>lib/crimson.jar</string>
         <string>lib/xerces_2_5_0.jar</string>
         <string>lib/javaws.jar</string>
         <string>lib/xml-apis.jar</string>
         <string>lib/JWizardComponent.jar</string>
         <string>lib/looks-2.0.2.jar</string>
         <string>lib/kxml2.jar</string>
         <string>lib/jcalendar.jar</string>
         <string>lib/xmlrpc-2.0.1.jar</string>
         <string>lib/commons-codec-3.1.zip</string>
         <string>lib/commons-collections-3.1.zip</string>
         <string>lib/commons-pool-1.2.zip</string>
         <string>lib/commons-dbcp-1.0-dev-20020806.zip</string>
         <string>lib/jh.jar</string>
       </array>


Let me know if that helps (or if I can help you avoid those gray  
hairs :). I am in the process of slipping out of the gvSIG project,  
but for some time I will still try to make myself available.


El 16/10/2008, a las 16:00, Henning Lorenz escribió:

> You can set your Java Preferences in /Applications/Utilities/Java/ 
> Java Preferences.app
>
> Henning
>
> On 2008-10-16, at 15:25 , Benjamin Ducke wrote:
>
>> Hi Agustin,
>>
>> thanks for those pointers. I will try linking to my JRE as you
>> suggested, just to make sure that everything runs OK.
>>
>> But for a "proper" solution, I would like to avoid anything
>> that touches system files, so the installation can be completely
>> self-contained and won't require root access.
>>
>> Awesome that you got gvSIG running on PowerPCs, too.
>> I will have to take a look at that. For now, the Intel version
>> is giving me enough gray hair ...
>>
>> Thanks,
>>
>> Ben
>>
>> Agustin Diez Castillo wrote:
>>> Ben,
>>> You can force Mac yo use a particular version of Java.
>>> All versions reside at
>>> /System/Library/Frameworks/JavaVM.framework/Versions
>>> and there a link point CurrentJDK to the version of your choice.
>>> So you only need to point CurrentJDK to your 1.6 JRE.
>>> But anyhow if you're in PPC machine you need to take out the crs  
>>> folder (this is true after the 913 build including 12xx). I've  
>>> prepared a Mac version with sextante and gvSIG mobile for PPC  
>>> machines [1].
>>> Agustin
>>> [1] http://gvsigmac.blogspot.com/2008/08/gvsig-112-running-on-mac-ppcs.html
>>> El Oct 16, 2008, a las 2:47 PM, Benjamin Ducke escribió:
>>>> Dear developers/list,
>>>>
>>>> I am currently trying to understand how Java works on Mac OS X.
>>>> Since Apple decides what Java gets installed on any version of
>>>> Mac OS X, not the user, I would like to be able and bundle my own
>>>> 1.6 JRE with gvSIG, so that I can deploy an identical version on
>>>> any Mac.
>>>>
>>>> As a JRE, I am using the Soylatte FreeBSD port and that seems to  
>>>> run
>>>> fine, but gvSIG always picks up the system's outdated Java 1.5 (I  
>>>> am
>>>> running on Mac OS 10.4 with no intentions whatsoever to update
>>>> to 10.5).
>>>>
>>>> Now, I have tried to recreate the whole Java startup procedure  
>>>> using
>>>> a shell script, which I modeled after the one for Linux:
>>>>
>>>> ----
>>>>
>>>> #!/bin/sh
>>>> # gvSIG.sh: startup script for gvSIG on Mac OS X
>>>> PATH_TO_GVSIG="/Users/bartsimpson/Desktop/gvSIG1.1.2.app"
>>>> PATH_TO_RES="$PATH_TO_GVSIG/Contents/Resources/gvSIG/gvSIG 1.1.2  
>>>> build 1045.app/Contents/Resources"
>>>>
>>>> export DYLD_LIBRARY_PATH="$PATH_TO_RES/NativeLibs"
>>>> export PROJ_LIB="$PATH_TO_RES/Java/gvSIG/extensiones/ 
>>>> org.gvsig.crs/data"
>>>>
>>>> cd "$PATH_TO_RES/Java"
>>>>
>>>> # Setup Java environment and run gvSIG
>>>>
>>>> # Java tuning settings
>>>> MAX_HEAP=512
>>>> INI_HEAP=512
>>>>
>>>> JAVA_VM="/Users/bartsimpson/Desktop/soylatte16-i386-1.0.3/bin/java"
>>>>
>>>> $JAVA_VM -Djava.library.path="../NativeLibs" -cp andami.jar:./lib/ 
>>>> gvsig-i18n.jar:./lib/beans.jar:./lib/log4j-1.2.8.jar:./lib/iver- 
>>>> utiles.jar:./lib/castor-0.9.5.3-xml.jar:./lib/crimson.jar:./lib/ 
>>>> xerces_2_5_0.jar:./lib/javaws.jar:./lib/xml-apis.jar:./lib/ 
>>>> looks-2.0.2.jar:./lib/JWizardComponent.jar:./lib/kxml2.jar:./lib/ 
>>>> jcalendar.jar:./lib/jh.jar -Xms${INI_HEAP}M -Xmx${MAX_HEAP}M  
>>>> com.iver.andami.Launcher gvSIG gvSIG/extensiones "$@"
>>>>
>>>> ----
>>>>
>>>> This goes almost all the way to starting gvSIG, but eventually  
>>>> fails:
>>>>
>>>> java.lang.reflect.InvocationTargetException
>>>>      at java.awt.EventQueue.invokeAndWait(EventQueue.java:997)
>>>>      at  
>>>> javax.swing.SwingUtilities.invokeAndWait(SwingUtilities.java:1323)
>>>>      at com.iver.andami.Launcher.main(Unknown Source)
>>>> Caused by: java.lang.NoClassDefFoundError: Could not initialize  
>>>> class com.iver.cit.gvsig.fmap.crs.CRSFactory
>>>>      at com.iver.cit.gvsig.project.Project.<clinit>(Unknown Source)
>>>>      at  
>>>> com.iver.cit.gvsig.project.ProjectFactory.createProject(Unknown  
>>>> Source)
>>>>      at  
>>>> com.iver.cit.gvsig.ProjectExtension.loadInitialProject(Unknown  
>>>> Source)
>>>>      at  
>>>> com.iver.cit.gvsig.ProjectExtension.postInitialize(Unknown Source)
>>>>      at com.iver.andami.Launcher.postInitializeExtensions(Unknown  
>>>> Source)
>>>>      at com.iver.andami.Launcher.access$600(Unknown Source)
>>>>      at com.iver.andami.Launcher$4.run(Unknown Source)
>>>>      at  
>>>> java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:199)
>>>>      at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
>>>>      at com.iver.andami.ui.AndamiEventQueue.dispatchEvent(Unknown  
>>>> Source)
>>>>      at  
>>>> java 
>>>> .awt 
>>>> .EventDispatchThread 
>>>> .pumpOneEventForFilters(EventDispatchThread.java:273)
>>>>      at  
>>>> java 
>>>> .awt 
>>>> .EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java: 
>>>> 183)
>>>>      at  
>>>> java 
>>>> .awt 
>>>> .EventDispatchThread 
>>>> .pumpEventsForHierarchy(EventDispatchThread.java:173)
>>>>      at  
>>>> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java: 
>>>> 168)
>>>>      at  
>>>> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java: 
>>>> 160)
>>>>      at java.awt.EventDispatchThread.run(EventDispatchThread.java: 
>>>> 121)
>>>>
>>>>
>>>>
>>>> Can someone on this list make sense of that error message?
>>>> Is the problem with the CRS library? Did I forget to include
>>>> something into the Java classpath or the system's linker path?
>>>>
>>>> Thanks,
>>>>
>>>> Ben
>>>>
>>>>
>>>> -- 
>>>> Benjamin Ducke
>>>> Senior Applications Support and Development Officer
>>>>
>>>> Oxford Archaeology Ltd
>>>> Janus House
>>>> Osney Mead
>>>> OX2 0ES
>>>> Oxford, U.K.
>>>>
>>>> Tel: +44 (0)1865 263 800 (switchboard)
>>>> Tel: +44 (0)1865 980 758 (direct)
>>>> Fax :+44 (0)1865 793 496
>>>> benjamin.ducke at oxfordarch.co.uk
>>>>
>>>>
>>>>
>>>>
>>>> ------
>>>> Files attached to this email may be in ISO 26300 format (OASIS  
>>>> Open Document Format). If you have difficulty opening them,  
>>>> please visit http://iso26300.info for more information.
>>>>
>>>> _______________________________________________
>>>> Gvsig_internacional mailing list
>>>> Gvsig_internacional at runas.cap.gva.es
>>>> http://runas.cap.gva.es/mailman/listinfo/gvsig_internacional
>>>>
>>> _______________________________________________
>>> Gvsig_internacional mailing list
>>> Gvsig_internacional at runas.cap.gva.es
>>> http://runas.cap.gva.es/mailman/listinfo/gvsig_internacional
>>
>>
>> -- 
>> Benjamin Ducke
>> Senior Applications Support and Development Officer
>>
>> Oxford Archaeology Ltd
>> Janus House
>> Osney Mead
>> OX2 0ES
>> Oxford, U.K.
>>
>> Tel: +44 (0)1865 263 800 (switchboard)
>> Tel: +44 (0)1865 980 758 (direct)
>> Fax :+44 (0)1865 793 496
>> benjamin.ducke at oxfordarch.co.uk
>>
>>
>>
>>
>> ------
>> Files attached to this email may be in ISO 26300 format (OASIS Open  
>> Document Format). If you have difficulty opening them, please visit http://iso26300.info 
>>  for more information.
>>
>> _______________________________________________
>> Gvsig_internacional mailing list
>> Gvsig_internacional at runas.cap.gva.es
>> http://runas.cap.gva.es/mailman/listinfo/gvsig_internacional
>
>
> _______________________________________________
> Gvsig_internacional mailing list
> Gvsig_internacional at runas.cap.gva.es
> http://runas.cap.gva.es/mailman/listinfo/gvsig_internacional




More information about the Gvsig_internacional mailing list