2012-02-24

Setting up a Java programming environment

Author of this guide: Joana

Software needed for the programming environment.

Note:
- to avoid discrepancies, please install exactly the versions mentioned here as they are the same provided in the laboratory machines
- also deactivate all auto-update options in Eclipse to keep your environment as similar as possible to the one provided in the laboratory

----------------------------------

Software:

Requirements:
- You can install the needed software in your preferred operating system, including Windows, Linux and Mac OS X.

--- --- --- ---

Most tools have a command line (shell) interface that needs to be installed in order to solve some problems along the way during our course.
In Windows XP consider installing the PowerToy "Open Command Here".
http://www.microsoft.com/windowsxp/downloads/powertoys/xppowertoys.mspx
Windows 7 already provides that feature built-in in the secondary context menu (available when holding shift and right-clicking a folder).
In Mac OX there is a similar tool called 'Go2Shell'
http://itunes.apple.com/us/app/go2shell/id445770608?mt=12

--- --- --- ---

Environment variables:
You can define system and user environment variables.
Each operating system provides this through different ways.
The main variables are:

PATH
To allow the operating system to found the binaries of the programs you want to be running in the shell (console) you need to include all the relevant paths in the system's environment variable PATH. This allows you to call just 'javac', 'java', 'ant', and 'svn' and the system will know where to find the necessary binaries.

CLASSPATH
When using Java's Development Kit (JDK) another interesting variable is the CLASSPATH. It informs the java program where to look for the needed libraries. However there are better ways to achieve this goal, namely using the Ant build files.

To further explore this topic, consider reading the article on Wikipedia:
http://en.wikipedia.org/wiki/Environment_variable

--- --- --- ---

LIST:

Java Developer Kit ~ JDK
Java Runtime Environment ~ JRE
-> follow the installation instructions on official webpage:
http://www.oracle.com/technetwork/java/index.html
http://www.oracle.com/technetwork/java/javase/index-137561.html
You must have a copy of the JRE (Java Runtime Environment) on your system to run Java applications and applets. To develop Java applications and applets, you need the JDK (Java Development Kit), which includes the JRE.

--- ---

Eclipse IDE for Java EE Developers
Tools for Java developers creating Java EE and Web applications, including a Java IDE, tools for Java EE, JPA, JSF, Mylyn and others. It requires JRE to run.
Instructions can be found here: http://wiki.eclipse.org/Eclipse/Installation

It needs to be enriched with 2 plugins:

- Eclipse Subversive - SVN Plugin that allows the integration of eclipse with SVN tools and visually navigate SVN repositories like the one where the group's projects will be hosted.
It consists in two parts: Subversive plug-in and Subversive SVN Connectors. Both parts are required in order to work with Subversive, so you need to install Subversive plug-in and pure Java SVNKit connector.
http://www.eclipse.org/subversive/downloads.php#indigo_stable

- Google Plugin for Eclipse (GPE) adds functionality to Eclipse for creating and developing Google Web Toolkit (GWT) applications. GWT is downloaded with the GPE. It will assist the developers in the building of browser-based applications (user interface) for the project. GWT compiles your Java source code into optimized, stand-alone JavaScript files that automatically run on all major browsers, as well as mobile browsers for Android and the iPhone. It will also be used by the distributed systems course students with the JBoss Application Server.

A third plugin can also be useful:
- Log Watcher adds a view to Eclipse that allows log files to be monitored for changes, similar to the Unix tail utility.
http://graysky.sourceforge.net/

--- ---

- GWT browser plugin - GWT Development Mode needs a browser plugin to operate. Please install the appropriate one for your browser. It integrates with a variety of browsers and lets you debug GWT code from within the Eclipse IDE.

--- ---

- Apache Ant 1.8.2 - Ant is a Java library and command-line build tool similar in purpose to Make. It helps with the typical tasks of software development: compile, build, deploy, install and clean. It can be run from inside the Eclipse IDE (in the proper View) but you also need to run it in the command line.

--- ---

- Apache Subversion 1.7.2 - Subversion is a free/open source version control system (VCS). It manages files and directories, and the changes made to them, over time. This allows you to recover older versions of your data or examine the history of how your data changed and who changed it.
Eclipse Subversive plugin (Eclipse section) provides a graphical interface. You need a client that can run in the shell. There are other standalone graphical interfaces like TortoiseSVN, SVNx, etc. In any case, you need a working command line version.

In this page you can find several clients binary packages:
http://subversion.apache.org/packages.html
We do not need you to install a server because the project will be hosted in the sigma server machine and will be accessed through the SVN+SSH protocol.

----------------------------------





No comments: