Contribute to the DSpace Development Fund

The newly established DSpace Development Fund supports the development of new features prioritized by DSpace Governance. For a list of planned features see the fund wiki page.

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 16 Next »

February 25, 2011: This is a work in progress that I plan to be developing throughout the first couple of weeks in March of 2011. There are a few versions of instructions currently available on within the DSpace confluence site, some of which are fairly out of date. This page will be covering instructions as relates to creating a development environment on Mac OSX 10.6 (Snow Leopard) while using the latest versions of related software, but will attempt to be platform agnostic.

Development Environment - Tools: Prerequisite Installations

This initial section will be targeted toward making certain that all prerequisite software tools have been downloaded and installed properly on the system you will be using for your development. Specifically, this is going to cover the following software:

  • Database software - Currently PostgresSQL and Oracle are supported by DSpace.
  • Servlet container software - The most popular servlet container tends to be Apache Tomcat, but others such as Jetty, Geronimo, etc can be used.
  • Build Tools - Maven and Ant are the software project management and comprehension tools used to build and deploy DSpace from source code.
  • IDE (Integrated Development Environment) - Eclipse, our IDE of choice for this endeavor.

Other software that will be noteworthy is the list of plug-ins we will use to extend Eclipse's native functionality. Among these plug-ins are:

  • A servlet container plug-in - Specifically, we will be using the Sysdeo plug-in for Apache Tomcat. This will provide us some ease of control (starting, stopping, debugging) over our servlet container from within the Eclipse IDE.
  • A Maven plug-in - The m2eclipse plug-in will allow us to run Maven commands such as building, cleaning, or packaging from within the Eclipse IDE.
  • An Ant plug-in - This will allow us to run Ant commands from within the Eclipse IDE (this plug-in is built into the versions of Eclipse we will be using).
  • An SVN plug-in - This will provide the ability to access and manipulate svn repositories from within the Eclipse IDE via either Subclipse or Subversive .
  • The Web Tools Platform (WTP) plug-in - WTP provides a large swath of web development abilities from within the Eclipse IDE.
  • The Data Tools Platform (DTP) plug-in - DTP provides a large swath of database development abilities from within the Eclipse IDE.

With this introduction to the necessary tools, the following sections will cover installation of these software packages / plug-ins for your system.

Database Software

DSpace requires either PostgreSQL 8.4 (or greater) or Oracle 10g (or greater) relational database software. For the purposes of this tutorial on setting up an Eclipse IDE, we'll be using PostgreSQL 9.0.3.

PostgreSQL 9.0.3

Oracle

Servlet Container Software

Tomcat 7.0.8

Other Servlet Container Software

Build Tools

Maven 3.0.2

Ant 1.8.2

Eclipse 3.6

Eclipse Plugins

Tomcat Plugin

Maven Plugin

Ant Plugin

SVN Plugin

Web Tools Platform Plugin

Database Development Plugin

Oxygen Plugin

Development Environment - Tools: Configuration

Database Software

PostgreSQL 9.0.3

Oracle

Servlet Container Software

Tomcat 7.0.8

Other Servlet Container Software

Build Tools

Maven 3.0.2

Ant 1.8.2

Eclipse 3.6

Eclipse Plugins

Tomcat Plugin

Maven Plugin

Ant Plugin

SVN Plugin

Web Tools Platform Plugin

Database Development Plugin

Oxygen Plugin

DSpace Setup - Installing (Building/Deploying) Your DSpace Project(s)

Project Architecture - Organizing Your DSpace Project(s)

The One-Big Approach

The One-Project-Per-Module Approach

The Combined Approach

Project Building - Building Your DSpace Projects with Maven

Project Deployment - Deploying Your DSpace Projects with Ant

DSpace Viewing - Viewing Your Projects with Eclipse Tools

Viewing The Application through Tomcat and your browser

Viewing The Database through Database Development Tools

Viewing The Java code through Eclipse Java Editor

Viewing The XML/XSLT code through Oxygen

Extraneous Notes

  • No labels