SourceForge

The source code for Specify Software is available at Source Forge.

The Source Code

The source code for Specify is hosted on SourceForge as the 'Specify' project. NOTE: The user names have changed from our internal project to the SourceForge project. The mapping of users is as followings:

Specify Internal User Name
Specify SourceForge User Name
anhalt
benanhalt
timo
timoatkudoredu


Building Specify

The Specify project engineers use the Eclipse platform for developing in Java, along with the Subclipse SVN plugin. After downloading these tools you should configure a 'remote' site in the SVN perspective for this URL:

https://specify.svn.sourceforge.net/svnroot/specify

The Specify project requires a JDK to build, not a JRE. The required 3rd party JAR files are included in the checkout. Once the everything has been checked out you must configure your project's 'build path.' The JAR files are divided into several directories. The JAR files in the directories should be loaded in the following order:

Directory
JARS
Exceptions
lib
All
 
hibernate_libs
All
 
embedded_libs
All
 
iReportLibs
All
 
system_dep_libs  
On Linux/Windows include only:non-mac-application-adapter.jar
On Mac exclude: All
wwlib
All jar files
 

With the 'Libraries' tab still showing, scroll to the bottom and expand the Java System Library. Click on 'Native library location', then 'Edit...', then 'Workspace...', then select the 'wwlib' directory in your project. This is needed for the DLLS and shared libraries for the WorldWind plugin.

Running Specify

When configuring Specify to run, you must include the 'help' directory in the classpath or it will generate an error at start up. Start by creating a 'Debug Configuration' or a 'Run Configuration,' with the configuration dialog showing, click on the 'Classpath' tab, then the 'default classpath' under the 'User Entries.' Next click on 'Advanced...', select the 'Add Folders' radio button and then click 'OK.' Now, select the 'help' directory in your project.

On Linux and Windows you should use a VM argument for seeting the heap space to at least 500MB, use the following option:

-Xmx512m

On the Mac there are several VM arguments that should be set:

-Xdock:icon="src/edu/ku/brc/specify/images/specify128.png"
-Dcom.apple.macos.useSmallTabs=true
-Dapple.laf.useScreenMenuBar=true
-Xmx512m
-Dcom.apple.mrj.application.apple.menu.about.name=Specify
-Dappdir=..