LOUI development is best done in with the eclipse IDE. Java 7 and eclipse 3.5 are the minimum acceptable versions for development. Errors may occur on 4.x versions of eclipse. Using Java 8 and eclipse 3.8.2 is highly recommended. It is required to download the full Eclipse SDK (e.g. eclipse-SDK-3.8.2-macosx-cocoa-x86_64.tar.gz) from the eclipse download site. If one wants to create products for multiple platforms, downloading the eclipse Delta Pack (eclipse-3.8.2-delta-pack.zip) and setting up a "Target Platform" would also be required. In addition to these download files, one should also use the Eclipse update mechanism to install two more packages:
- GEF SDK from the standard download site already available in eclipse
- PGroup widget from Nebula project at http://download.eclipse.org/technology/nebula/snapshot
Each required plugin which is not part of the standard eclipse SDK is in the source repository as its own project. Sample list of required projects for the LOUI build project set are as follows:
The repository is subversion and it is on jumar. The connection url is svn://jumar.lowell.edu
Example checkout syntax from command line:
$ svn checkout svn://jumar.lowel.edu/edu.lowell.loui.nasa42/trunk edu.lowell.loui.nasa42
Create a new workspace and do the above checkouts and then do the following:
- Create
/opt/LOUI/
directory for storing the configuration files Check out the whole tree for the config files
$ cd /opt/LOUI $ svn checkout svn://jumar.lowell.edu/LOUI_Configuration/trunk/dev .
- Edit the jndi.properties file in /opt/LOUI/(DESIRED LOUI(we reccomend lmi)) to point to the right machine and right broker.
One can either do the checkouts individually using an eclipse subversion plugin, such as subclipse, or use a shell script to do all the checkouts in one operation, or use the eclipse's Team Project Set.
The easiest and fastest way to build the workspace is to use Team Project Sets.
In order for the apps to run properly, the directories for the log files need to be created in advance. The logging framework creates the log files and rotates them automatically but the parent directory structure needs to be in place. The log files are located in directories under /var/log/LOUI/
. Each app has a separate directory. The current list is:
cat
deveny
getTemp
gwaves
igrins
joe
joeClient
lmi
nightlyReport
nihts
observerTargetlist
After you retrieve the required plugins, there are a few more libraries that need to be downloaded and installed. First is JUnit:
https://github.com/junit-team/junit/wiki/Download-and-Install
-Download the JAR file for the latest version.
-Put the JAR somewhere easily reached in your LOUI workspace.
-Find the plugins that require junit. This can be done most easily using the problems pane.
-navigate to that plug-in and right-click it.
-navigate through properties/java build path/libraries/add external JARs
-navigate to the junit JAR, and select it.
-Now, the project can access junit, but the manifest will require junit4.
-navigate to the project''s manifest (META-INF/MANIFEST.MF)
-in the manifest, find the junit4 requirement, and delete the 4.
Next is Eclipse Nebula. Instructions for installation can be found on the site.
https://eclipse.org/nebula/downloads.php