Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

LOUI development is best done in with the eclipse IDE. Java 5 7 and eclipse 3.5 are the minimum acceptable versions for development - using Java 8 and eclipse 3.8.2 is highly recommended.  Errors may occur on 4.x versions of eclipse, and higher Java versions (as of 2019 October) have not been tested.

. Using eclipse 3.8.2 is recommended. It is required to download the full Eclipse SDK (e.g. eclipse-SDK-3.58.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.

Each required plugin which is not part of the standard eclipse SDK is in the source repository as its own project. Current list of required projects for the LOUI build project set are as follows:

Image RemovedImage Removed

In addition to these download files, one should also use the Eclipse update mechanism to install a few more packages:

In the "Help" menu option, "Install New Software ..."

  • GEF SDK from the standard download site already available in eclipse
  • PGroup widget from Nebula project at https://archive.eclipse.org/nebula/releases/2.0.0/
    • NOTE: This version at least made the getTemp app buildable for me; the latest (2.5.something) had an error related to JRE 1.8 so my guess is nebula dropped Java 8 support somewhere along the way?
    • Add the URL in the "Work with" box, and select the Pgroup widget from the "Nebula Release Individual Widgets" section
  • Subversive

Subversive is the subversion (SVN) plugin; you'll need that to get the sources.  It works with the current project sets.  In the past, subclipse was another option, but the latest releases need Eclipse 4.2.x so that won't work super easily.

The repository is The repository is subversion and it is on jumar. The connection url is is svn://jumar.lowell.edu

Example checkout syntax from command line:

Code Block
bash
bash
$ svn checkout svn://jumar.lowel.edu/edu.lowell.loui.nasa42/trunk edu.lowell.loui.nasa42<YOUR DESIRED REPO HERE>/trunk <LOCAL PATH HERE>

Create a new workspace and do the above checkouts and then do the following:

  • Create Create /opt/LOUI/ directory  directory for storing the configuration files. Give it permissions and ownership of the your username (or your desired development username)
  • Check out the whole tree for the config files

    Code Block
    bash
    bash
    $ 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.

You'll also need to set up the logging path; the apps will technically work without it, but this should not be allowed. Root permissions are fine.

  • Create a directory in /var/log/LOUI/

The logging framework creates the log files and rotates them automatically but the parent directory structure needs to be in place. Each app has a separate directory under /var/log/LOUI/. The following apps should show up in there:

  • cat
  • deveny
  • getTemp
  • gwaves
  • igrins
  • joe
  • joeClient
  • lmi
  • nightlyReport
  • nihts
  • observerTargetlist

Once you're up and running minimally, the fastest way to get everything is to use Team Project Sets.

OLD UNSORTED NOTES STILL BELOW

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:

Image AddedImage Added

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.



After you retrieve the required plugins, there are a few more libraries that need to be downloaded and installed. First is JUnit:

...

-in the manifest, find the junit4 requirement, and delete the 4.


Next is Eclipse Nexus.

 

Lastly, you will need to accommodate for two imports that are deprecated and will be removed at some point.

 Open classes edu.lowell.loui.common.util/SoundUtilities and edu.lowell.loui.common.view/InfoView

In both, comment out the imports for: javazoom.jl.decoder.JavaLayerException    and     com.gtranslate.Audio

In SoundUtilities, comment out the interior of PlayAlertSoundMp3(String soundFile).

In InfoView, comment out the interior of generateCustomSoundFile(SoundTypes type), then, directly after the comment, add the following statement:

return Platform.getLocation().toString() + "/custom" + type.toString() + "Sound.mp3";

Nebula. Instructions for installation can be found on the site.

https://eclipse.org/nebula/downloads.php

-

When installing the development files for the first time:

  1. unpack site-1.4.8.zip in /Applications/eclipse/dropins  after the eclipse installation is moved to Applications.
  2. Create a directory under the user's home directory called "target". Within the "target" directory create a subdirectory called eclipse3.8.2/. Unpack eclipse-3.8.2-delta-pack.zip under ~/target/eclipse3.8.2. This will create 2 new directories called features/ and plugins/.

The installation file for the SVN version required by Eclipse 3.8.2 may be found here:

http://www.eclipse.org/subversive/previous-releases.php

or directly from:

http://www.eclipse.org/downloads/download.php?file=/technology/subversive/1.0/builds/juno/Subversive-1.0.0.I20130122-1700.zip

Another useful link for finding the Eclipse 3.8.2 installation and supporting files is here:

http://archive.eclipse.org/eclipse/downloads/drops/R-3.8.2-201301310800/macPlatform.php

and

http://archive.eclipse.org/eclipse/downloads/drops/R-3.8.2-201301310800/

...