Introduction
Having a a portable environment to easily share among developers using the zero footprint service approach if possible.
This article is being pulled from the Getting Started and Manual Eclipse Java Tomcat Setup documents from www.tinframework.homeip.net.
There is a working implementation of this for SiteMesh at the SiteMesh Wiki.
The BonsaiFramework uses a portable Java EE development environment that is composed of the following components,
- Eclipse
- Java
- Tomcat
To get quickly started download the package that matches your operating system.
Package | Operating Systems |
---|---|
tbd | Mac OS X |
tbd | Windows 7 32-bit |
tbd | Windows 7 64-bit |
Let's try and do Eclipse using Java 64 but then have Tomcat 32-bit use Java 32-bit.
Eclipse Setup
You want to download the portal (tar.gz for Linux, zip for Windows) version of Eclipse and not the installer.
Following the portability principle of the Bonsai Framework there is no installer and the software is isolated from the operating system.
The remainder of this document provides details about how to build/adjust the portable environment yourself. These same instructions should also work for the SpringSource Tool Suite.
Download Eclipse IDE for Java EE Developers.
Select Location
Select a drive and directory your computer where you will be keeping everything. The Bonsai Framework uses,
- Windows = C:\apps\
- Linux or Unix = /home/[your home directory]/apps for example, /home/tpham/apps/
Setup Package Java
Download Oracle's JRE (Java Runtime Environment) and follow the manual Java setup instructions.
Move the Java folder into your eclipse directory. For example,
- Windows = C:\apps\eclipse\jre1.6.0_18
- Linux or Unix = /home/tpham/apps/eclipse/jre1.6.0_18
Modify eclipse.ini
Modify the eclipse.ini to point to your JRE with by adding -vm and a reference to Java.
If you are using STS on Mac OS X, first you need to use the JDK (Java Development Kit) not the JRE (Java Runtime Environment)
- Go to your STS installation, and right-click on STS Application
- Select ‘Show Package Contents’
- A new Finder window will open and show the content of the application bundle.
- In Contents/MacOS is STS.ini which is equivalent of eclipse.ini
Two key thing to keep in mind,
- You can not mix 32-bit and 64-bit. For example, running Eclipse 32-bit and Java 64-bit will not work.
- Placement of the -vm option is very important. The -vm option must occur before the -vmargs option.
- If everything appears on one line use a better free editor like Notepad++.
Here is an example of what the eclipse.ini would look like for Windows,
-startup plugins/org.eclipse.equinox.launcher_1.0.201.R35x_v20090715.jar --launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.0.200.v20090519 -product org.eclipse.epp.package.jee.product --launcher.XXMaxPermSize 256M -showsplash org.eclipse.platform --launcher.XXMaxPermSize 256m # --------------------------- # Start Bonsai Framework # ----------------------- # Use local version of Java. # Note, these lines must come just before -vmwargs -vm jre1.6.0_18\bin\javaw.exe # ----------------------- # End Bonsai Framework # --------------------------- -vmargs -Dosgi.requiredJavaVersion=1.5 -Xms40m -Xmx512m
Here is an example of eclipse.ini for Unix or Linux,
-startuplugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar--launcher.library-startup plugins/org.eclipse.equinox.launcher_1.1.1.R36x_v20101122_1400.jar --launcher.library plugins/org.eclipse.equinox.launcher.gtk.linux.x86_1.1.2.R36x_v20101019_1345 -product org.eclipse.epp.package.jee.product --launcher.defaultAction openFile -showsplash org.eclipse.platform --launcher.XXMaxPermSize 256m --launcher.defaultAction openFile # --------------------------- # Start Bonsai Framework # ----------------------- # Use local version of Java. # Note, these lines must come just before -vmwargs -vm jre1.6.0_18/bin/java # ----------------------- # End Bonsai Framework # --------------------------- -vmargs -Dosgi.requiredJavaVersion=1.5 -XX:MaxPermSize=256m -Xms40m -Xmx512m
See Specifying the JVM at the Eclipse Wiki for more deteails.
Setup Tomcat
Similar to Eclipse, Tomcat also is also packaged without an installer. For windows we download the x86 .zip and for Linux or Unix download the .tar.gz file. Following the Bonsai Framework standards, decompress to the following folder,
- C:\apps\eclipse-servers\apache-tomcat-6.0.24
- /home/tpham/apps/eclipse-servers/apache-tomcat-6.0.24
Launch Eclipse
Start Eclipse by running the Eclipse executable included with the release. In our example the directories would be,
- Windows = C:\apps\eclipse\eclipse.exe
- Linux or Unix = /home/tpham/apps/eclipse/eclipse
If using Mac OS X you may recieve an error due to modification of the STS.ini file,
“Eclipse.app” is damaged and can’t be opened. You should move it to the Trash.
To fix this switch to the directory where Eclipse.app resides,
spctl --add --label "Eclise" Eclipse.app
Actually, not sure if above fully worked. I tried and it did not seem to take. However, it started working after I I ended up switching to a root enabled account and disabling and enabling spctl. It may be adding below a step to reboot,
sudo spctl --master-disable sudo spctl --master-enable
Then the error message turns to,
“Eclipse.app” is an application downloaded from the Internet. Are you sure you want to open it?
Click "open". Then enabling after it seems ok,
sudo spctl --master-disable sudo spctl --master-enable
I need to test on a fresh machine before saying 100%.
Configure Eclipse to Use Tomcat
...
Ok this is where we have a problem. Once the Tomcat instance is created there seems to be no way to dynamically specify the various classpath entries... double-click on the server, Overview, Open Launch configuration, Classpath.
There it is hard coded. As soon the eclipse directory changes, the server stops working. Tried various variable options with Garth without success.
Now that's it's 2014 maybe this changed... also try talking to Patrick.
...