Introduction
Phenote is stored in a subversion repository. This section provides instructions for downloading the source code, compiling, and running the software from either the command line or through Eclipse, and is primarily intended for developers.
Getting the Source Code with Eclipse
Build Paths
The Phenote Eclipse project is designed to be used with the OBO and BBOP Java APIs. The build path in the Phenote project file refers to projects named "OBO", "BBOP", and "OBO-Edit" as dependencies, so it is highly recommended that you follow the optional instructions below to create these projects as well.
However, it is not necessary. If you prefer, you may check out only the Phenote project, remove the project dependencies, and modify the build path to include jars/bbop.jar, jars/obo.jar, and jars/oboedit.jar.
Installing Subversion Support
Current versions of Eclipse do not automatically support subversion. However, the subclipse plugin adds seamless subversion support to Eclipse, using the existing Team mechanisms. See http://subclipse.tigris.org/install.html for installation instructions.
Getting Phenote from Subclipse
- Choose File -> New -> Project
- Select "Checkout Projects from SVN" in the New Project Wizard, and click "Next"
- Choose "Create a New Repository Location" and click "Next"
- Enter https://geneontology.svn.sourceforge.net/svnroot/geneontology/java/oboedit/ into the location field and click "Next"
- Choose the trunk directory to get the latest version (choose a branch from the "tags" or "branches" directories to get an earlier version) and click "Next"
- Enter a name for the Eclipse projet ("Phenote" is recommended) and click "Finish"
(Optional) Getting the OBO API from Subclipse
- Choose File -> New -> Project
- Select "Checkout Projects from SVN" in the New Project Wizard, and click "Next"
- Choose "Create a New Repository Location" and click "Next"
- Enter https://geneontology.svn.sourceforge.net/svnroot/geneontology/java/obo/ into the location field and click "Next"
- Choose the trunk directory to get the latest version (choose a branch from the "tags" or "branches" directories to get an earlier version) and click "Next"
- Enter a name for the Eclipse projet ("OBO" is recommended) and click "Finish"
(Optional) Getting the BBOP API from Subclipse
- Choose File -> New -> Project
- Select "Checkout Projects from SVN" in the New Project Wizard, and click "Next"
- Choose "Create a New Repository Location" and click "Next"
- Enter https://geneontology.svn.sourceforge.net/svnroot/geneontology/java/bbop/ into the location field and click "Next"
- Choose the trunk directory to get the latest version (choose a branch from the "tags" or "branches" directories to get an earlier version) and click "Next"
- Enter a name for the Eclipse projet ("BBOP" is recommended) and click "Finish"
(Optional) Getting the OBO-Edit API from Subclipse
- Choose File -> New -> Project
- Select "Checkout Projects from SVN" in the New Project Wizard, and click "Next"
- Choose "Create a New Repository Location" and click "Next"
- Enter https://geneontology.svn.sourceforge.net/svnroot/geneontology/java/oboedit/ into the location field and click "Next"
- Choose the trunk directory to get the latest version (choose a branch from the "tags" or "branches" directories to get an earlier version) and click "Next"
- Enter a name for the Eclipse projet ("OBO-Edit" is recommended) and click "Finish"
Updating the source code via subclipse
- The source code for these projects is updated periodically. You have to update manually; Eclipse will not do this automatically.
- Right-click on the project name (e.g. Phenote) in the Package Explorer and choose Team->Update from the menu
- When the update is complete, right-click on the project name again and choose Refresh
Running Phenote from Eclipse
When you run Phenote, you need to assign the amount of memory it will use. To do so, select "Open Run Dialog" from the Run menu. Make sure Phenote is selected in the "Java Application" list on the left. Then fill in the following parameter in the VM arguments box according to the amount of memory in your computer: (1024 is a great amount, if you can spare it)
You may also need to set the jars that Phenote uses. From the list of projects in the Package Explorer, choose Phenote, then right-click and select "Properties". In the Properties window, select "Java Build Path" from the list on the left side, and then choose the "Libraries" tab. Click "Add JARs" and add the jars in Phenote/jars.
You will also need to set up the test suite as a separate source tree:
If you are running with project dependencies, then you will need to set up some/all of the following:
In phenote, the project dependencies could be all of:
For BBOP, be sure to export some of the jars:
For OBO, there are dependencies on BBOP, be sure to include those under "projects"
For OBO-Edit, there are dependencies on BBOP, OBO, and also be sure to export some of the jars:
Other things to note about Eclipse
The source code for Phenote (and for the BBOP and OBO libraries that it depends on) changes frequently. To stay up to date inside Eclipse, use the right mouse menu option "Team -> Update". To update from the shell, use svn update.
Note that if you are using Eclipse but you do an svn update from the shell, or make any other changes outside of Eclipse, you will need to do a "Refresh" in Eclipse to get it in sync. Also note that if new jars are added to the project, you might need to add them to your Java Build Path in Eclipse (see above).
If you wish to stay informed of every single svn commit, you can join the svn-commits list.
Getting the Source Code from Subversion on the command line
svn co https://obo.svn.sourceforge.net/svnroot/obo/phenote/trunk phenote
To check out the supporting projects, run these additional commands:
svn co https://geneontology.svn.sourceforge.net/svnroot/geneontology/java/bbop/trunk BBOP
svn co https://geneontology.svn.sourceforge.net/svnroot/geneontology/java/obo/trunk OBO
svn co https://geneontology.svn.sourceforge.net/svnroot/geneontology/java/oboedit/trunk OBO-Edit
You should update the sourcecode periodically, as it changes daily. You can do that with the svn up command.
Running Phenote from the command line with ant
You will need to have Apache ant installed on your system.
Once installed, you should "build" the project with the command ant build-all
Then, you can run the software with ant run.
Note that is will currently run the "Classic" Phenote interface. If you would like to run the new "Plus" interface, you'll have to run with the command ./phenote2.