| Please read the following important notice before looking for tools for your home environment. Like most other computer science courses at ANU, this course is designed on the assumption that you will use the laboratory environment provided at ANU. The laboratory environment is supported by ANU technical staff and I have done my best to ensure that that environment works well in every respect. For your convenience, I have tried hard to allow you to facilitate you working from a home environment --- by using freely available tools that run on most major platforms and providing you with basic installation instructions. Please understand that your home environment, should you choose to use it, is not supported by the ANU. If you wish to use your own environment, please follow these steps:
The ANU and myself cannot support your home environment because each environment may differ in ways that are entirely outside of our control. |
Tools
All of the software tools you will need are provided as part of the standard environment in the RSCS computer labs. The tools are all freely available for Linux, Windows and MacOS X, so if you wish to work on your own computer, you can easily do so. Please read the notice above before following the instructions below.
We will do our best to support anyone using these standard tools. You are most welcome to use alternatives (such as a different IDE, etc), but you should not expect any support when you run into trouble using non-standard tools. For that reason, I strongly recommend that you stick to the supported tools unless you are quite confident in your ability to resolve any problems that may arise with non-standard tools. Furthermore, the lab tests will be conducted in the lab environment, so you will need to be proficient with the standard tools for the lab tests, regardless of which tools you choose to use at home.
Java
If you wish to develop code on your own computer, you will need to ensure that you have Java 1.7 update 4 or more recent installed. Please follow instructions from the Oracle website to test and install the "Java Platform (JDK)". Verify the version of your installation by typing "java -version".
Java FX
You will also need Java FX 2.1 or later. If you are using Windows or MacOS X, JavaFX comes bundled with Java 1.7u4 onwards. If you are using Linux, you will need to separately download and install Java FX using the link on the Oracle website. Oracle provides an installation guide here. Verify that you've installed things correctly by following the first steps in the Java FX tutorial. If you cannot build and execute the HelloWorld example, you should check that you have the correct version of Java and that JavaFX is correctly installed. (Be sure to read the Eclipse + JavaFX notes below).
Eclipse
You will need Eclipse 4.2 or later ("Juno"). You can download Eclipse from here. I recommend you use "Eclipse Classic 4.2".
Eclipse + JavaFX
The jfxrt.jar is not included in the standard Eclipse build path. You'll find that Eclipse complains when you try to create any JavaFX application because it can't find any of the javafx.* packages, including javafx.application.Application, which JavaFX apps must inherit from. You will need to follow the steps below each time you create a new Eclipse project that uses JavaFX.
Ensure that JavaFX is installed before continuing.
If you have JavaFX correctly installed, you should have a file called jfxrt.jar on your computer, within your Java installation. For example, if you installed Java 1.7u5 for Mac, you should find that it is in /Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/Home/jre/lib/jfxrt.jar. In a linux install, you should find it is in /usr/local/javafx-sdk2.2.0/rt/lib/jfxrt.jar (or something similar, depending on where you installed it and what version you have). In the computer labs it is in /usr/local/javafx/rt/lib/jfxrt.jar. Resolving Eclipse's problem is as easy as adding this file to your "build path" for a given project (you need to do it for each project, unfortunately). You do this by right-clicking on your project, and selecting "properties", then "Java Build Path", then select "Add External JARs...", then identify your jfxrt.jar. Once you have done that, you should find that Eclipse will happily work with JavaFX. Make sure you can create and run a basic "Hello World" program in your new environment.
Mercurial (hg)
You will need Mercurial 2.2.2 or later. You can download it from the link on the top right of the mercurial web page. Be sure to install the MercurialEclipse plugin (below), so that you can use Mercurial conviniently from within Eclipse.
Optionally, if you are using Windows you may also want to install TourtiseHg, a very popular tool which integrates mercurial functionality into the Windows explorer (hg is shorthand for mercury). More recently TortiseHg has been ported to Linux (Debian, Ubuntu and Fedora binaries available). There is also a MacOS X port, but no binary download.
Selenic, the makers of Mercurial, have some excellent resources for understanding how Mercurial works. Depending on your needs, you may find the following particularly helpful. Please keep in mind that the information on the Selenic web site is expressed in terms of using a command line interface, whilst you will be using MercurialEclipse (below). However, the concepts (and names) translate directly to MercurialEclipse. You will find each of the mercurial commands available under the "Team..." sub-menu in Eclipse.
- A tutorial on using Mercurial. You will probably want to start at step 3. Step 1 covers installing the Mercurial software, while step 2 covers initializing repositories which you do not need to do.
- A guide which gives a good overview of how to use Mercurial when running a collaborative project.
- A description of the concepts behind Mercurial.
- The definitive Mercurial guide.
The first 40 minutes of Lecture 10 cover the key aspects of Mercurial that you are expected to use in this course. The scenario described in that lecture is also available here as an exercise to be completed in your lab in week 6.
MercurialEclipse
You should install the MercurialEclipse plugin for Eclipse. The authors have not made it particularly obvious how to do so in a convinient way. Fortunately it is straightforward. Use the Eclipse Help menu and choose "Install New Software". You will need to inform Eclipse of the repository that hosts MercurialEclipse. Do this by clicking the "Add..." button (top right) and entering "MercurialEclipse" as the name and "http://mercurialeclipse.eclipselabs.org.codespot.com/hg.wiki/update_site/stable" as the location. Once you have done that you should be able to check MercurialEclipse and finish the installation.
