To implement new features in Jmol (or simply build yourself a version of Jmol), you can use many development tools. One of them is Eclipse.
If you don't already have a suitable development environment for Jmol, then Eclipse is probably the best choice:
- it's easy to install and is bundled with several tools required for Jmol.
- it's a powerful IDE.
- Jmol is already configured as an Eclipse project.
The following description has been tested under Windows, but it should work also for other OS (Linux, Mac OS X, ...).
The following tools must be already installed for Jmol:
- Java: Java 2 SDK 1.4, Java 5 SDK 1.5, or a later release.
- Eclipse: version 3.4 or a later release recommended but it should work from version 3.1.
- A Subversion (SVN) plugin for Eclipse : Subversive or Subclipse.
SVN Repository Configuration
To configure Eclipse to access Jmol's SVN repository, do the following:
- Launch Eclipse.
- Using the menu system at the top of the application, navigate to Window → Open Perspective → Other... and choose SVN Repository Exploring. Then click on the OK button.
- Then right click in the SVN Repositories window and select New → Repository Location... in the contextual menu.
- In the New Repository Location window, enter the value https://svn.code.sf.net/p/jmol/code/trunk in the Url field.
- Select Use a custom label: and enter the value Jmol for the custom value.
- Click on the Finish button and you are done.
Checking out Jmol from SVN
To check out Jmol from SVN, do the following:
- Switch to the SVN Repository Exploring perspective using Window → Open Perspective → Other... and choose SVN Repository Exploring. Click on the OK button.
- Expand the repository location you added in the previous section, you should see branches, tag and trunk after a few seconds.
- Expand trunk, you should see amongst other things the Jmol projects:
- Right click on Jmol and select Checkout in the contextual menu.
- If you want, you can also check-out other projects:
- Right click on the project and select Checkout in the contextual menu.
Note: There was a bug somewhere in the SVN chain (we don't know if the problem is in Subclipse, Eclipse or Sourceforge), so you may get an error during the check-out. Apparently, it has been fixed with more recent versions of the tools, but if it happens to you, you can fix the problem by doing the following:
- Switch to the Java perspective using Window → Open Perspective → Other... and choose Java (default). Click on the OK button.
- In the Package Explorer window, left click on the small triangle at the top right of the window and select Filters.... Uncheck the .* resources item and click on the OK button.
- Expand the project which had a problem.
- If the .project file has not been checked-out (no version information after the filename), delete it by selecting it and pressing the Suppr key.
- Right click on the project and select Team → Update in the contextual menu.
Configuring Eclipse to build Jmol
To configure Eclipse to build Jmol, you need to make sure that:
- the location of the Java executables (javac.exe and jarsigner.exe) is identified.
- the location of the Java library (tools.jar) is identified.
- Eclipse is using the same version of the Java compiler as the Java Runtime Environment.
Identifying the location of the Java executables (Unnecessary in Mac OS X)
This simply requires adding the Java SDK bin directory to the PATH environment variable. To do this on Windows, you need to open the Windows Control Panel, then double-click the System icon (which may be under category Performance). On the Advanced tab, select Environment variables. Scroll down to the path system variable and append to it a semicolon (;) followed by the path to the Java SDK binaries, something like ";C:\j2sdk1.4.2_10\bin".
Alternative: adding the Java JDK directory to the JAVA_HOME environment variable. As above, select Environment variables and edit or add the JAVA_HOME system variable with the path to the Java JDK files, something like "C:\Program Files (x86)\Java\jdk1.8.0_66".
Identifying the location of the Java library (Unnecessary in Mac OS X)
From Window → Preferences...: in the Preferences window, go to Ant → Runtime and select Global Entries and click on the Add External JARs button. Navigate to the directory containing tools.jar (probably something like C:\j2sdk1.4.2_10\lib), select tools.jar and click on OK.
Matching the Java compiler to the Java Runtime Environment
From Window → Preferences..., select Java. Compare the version listed for the compiler with that for the selected installed JREs. If they are not the same, use the Search facility to find more installed JREs. Then select the JRE that matches the compiler.
Installing and configuring gettext tools
If you want to use Jmol in an other language than English, you will need to install the gettext tools.
Download and install gettext. Linux users should try to install it using their distributions package management (like rpm, dpkg, apt, ...). Windows user download gettext from GnuWin32. Both make sure, that the gettext binaries are in your PATH environment variable.
Note for Windows users: If you installed the gettext binaries into e.g. C:\Program Files\GnuWin32, then you need to add C:\Program Files\GnuWin32\bin; to the existing PATH environment variable: Control Panel → System → Environment Variable (Tab Extended) OR run the following command in a windows command shell (this command is not permanent, you need to do it each time):
set PATH=%PATH%;C:\Program Files\GnuWin32\bin;.
Windows XP and Windows 2000 are currently supported.
Running and Debugging Jmol
You can run and debug Jmol directly within Eclipse.
Open a Java Perspective using Window → Open Perspective → Other... and there select Java (default).
To run either the application or the applet, right click on Jmol under the Projects tab and select (for the applet) Run As → Java Applet or (for the application) Run As → Java Application. The main class for the application is org.openscience.jmol.app.Jmol.
If not already done, open a Java Perspective using Window → Open Perspective → Other... and there select Java (default).
To make a full build of Jmol under Eclipse, just do the following:
- Find build.xml in the Package Explorer window and right click on it.
- Then select Run As → Ant Build in the contextual menu.
- If the build fails, look carefully at the message, and if you can't figure it out, send a copy of it in email message to email@example.com. Problems might include Ant not being able to find the Java compiler ("JAVA_HOME not in CLASSPATH?") or a difference in Java compiler and runtime environment versions ("class file has wrong version 49.0, should be 48.0").