I am a Mac user and I usually deploy my work on Linux servers, so I work normally and comfortably in an unix environment, both for development and delivery. Because of Java portability and because paths on Mac and Linux are the same, I do not have any problem moving my JumpStartKit or local install between Mac and Linuux: just copying files and placing them in the same location is enough (paths are harcoded in a Fatwire installation so the paths must be the same).
However one day I found myself, with a JSK built for my Mac I had to run in a Windows environment, and with a JSK built by someone else in a windows environment that I had to run in my Mac (Unix) environment.
I have previously "converted" those JSK using string replacement tricks, but it is definitely an error prone and annoying task. Furthermore, sometimes I have to make some changes, using Mac, and then send it back to a windows user.
So I started to think if replacing strings in JSK configuration files and database to run it on another environment can be avoided. After some thinking and experimentation, the answer is a full YES. With a couple of simple os level tricks you don't have to change anything.
This is easy.
The basic finding is that Java treats slashes and backslashes in the same way.
So a path like /Developer/Fatwire/jsk (a unix absolute path) it is actually interpreted in windows as "\Developer\Fatwire\jsk", that is an absolute path too, except that is relative to the current drive.
So, to run an Unix JSK in Windows, all is needed is placing it in the corresponding directory it would be under Unix, then change the current drive when you start it to the one where the JSK is installed.
To be sure of the current drive, you do better to start JSK command line, as explained below, instead of relying on the launcher provided by the JSK itself. Here is the procedure
Please note you may need to tweak the catalina.bat adding more memory, more perm gen space and so on. For a hint of the changes needed, give a look in the original catalina.ba,t looking for JAVA_OPTS and CATALINA_OPTS.
It is slightly more complex to run a Windows JSK on Unix without changing strings in the JSK.
The problem here is that a Windows path is usually something like "c:\Fatwire\JSK\7.6.2\". Now, Java does not care of the slashes. Reverse slashes are translated in forward slashed automatically.
The problem is that a path starting with C: is an absolute path in Windows but… a relative path on Unix! So trying to start JSK simply won't work unless you do something fix this confusion.
So my technique is installing the JSK in the same directory in the filesystem without the drive name; in the example before, in /Fatwire/JSK/7.6.2
Then I open the terminal, I go the tomcat bin directory (something like /Fatwire/JSK/7.6.2/App_Server/apache-tomcat-6.0.32/bin), do the trick described before for Windows to start it (I copy catalina.sh.org to catalina2.sh, then I tweak the OPTS taking the parameters from the catalina.sh).
Now, before starting tomcat I also do this :
ln -sf / C:
this way you create a symbolic link named "C:" (that is legal file name on unix) pointing to the root folder.
Now you can start tomcat with ./catalina2.sh run
This way, the current directory is the bin directory of tomcat. Every path is relative to this directory. This directory normally won't change, at least I am not aware of any internal change directory inside Fatwire.
So any reference to paths will start from C: that will point to the root folder. Since you have placed the JSK in the same position as it was in Windows, now every path now is resolved correctly.
That is all. Enjoy now working in a team without having either to switch to windows or (worse) run the JSK in an emulator(a real pain I do not advise to anyone unless you have really a lot of ram)