Project

General

Profile

Actions

Getting Started

This guide will give you a short briefing of how to get your development environment up and running within a few minutes.

Basic Setup

For the basic setup of your development environment you need to obtain the following tools and programs:

  • The Java Development Kit (JDK) version 7 or higher
  • A text editor or an IDE
  • Maven version 3.0.5 or higher
  • Git
  • Optional the Android SDK if you want to help developing the Android client

Since the setup process of the development environment is dependent on the operating system used, you will find the instructions for different systems (Windows, OS X and Linux) below.

Windows

  1. Download and install the Java Development Kit
    Version 7 of the JDK is sufficient, but we strongly recommend to use the most recent version.
  2. Get an editor or an IDE of your choice and install it
    Good IDEs for Java development are NetBeans and Eclipse. If you prefer a pure text editor, Notepad++ is worth trying.
  3. Download and install the most recent version of Maven
  4. Download Git.
    There are different options available in order to use Git on Windows:
    • Git Extensions
      Git Extensions is a graphical user interface for Git, that comes with Windows Explorer integration. It is based on MSysGit. Our recommendation for Windows users.
    • TortoiseGit
      TortoiseGit is a port of TortoiseSVN. For those familiar with TortoiseSVN, TortoiseGit is worth trying. It requires MSysGit.
    • MSysGit
      Git on the command line.

You are done!

OS X

  1. Download and install the Java Development Kit
    Version 7 of the JDK is sufficient, but we strongly recommend to use the most recent version.
  2. Get an editor or an IDE of your choice and install it.
    Good IDEs for Java development are NetBeans and Eclipse.
  3. Download and install Git and Maven. We recommend to use homebrew to install the latest version of both. Note: You probably have to adjust your PATH variable if you have already installed a version from the AppStore.

You are done!

Linux

On Linux you can use your system's package manager to install all required tools and programs. Below you will find the commands to do so, based on aptitude, a front-end for Debian's Advanced Package Tool (APT).

  1. Install OpenJDK
    OpenJDK 7: sudo aptitude install openjdk-7-jdk
    OpenJDK 8: sudo aptitude install openjdk-8-jdk
    If you prefer the Oracle JDK, you have to download and install it manually. You can get it from here.
  2. Install an editor or an IDE of your choice
    If you want to use a plain text editor, we recommend Emacs: sudo aptitude install emacs
    NetBeans: sudo aptitude install netbeans
    Eclipse: sudo aptitude install eclipse
    Note: If you want to use the most recent version of NetBeans or Eclipse, which is recommended, you should obtain the installer packages from the official websites and perform a manual installation.
  3. Install Maven
    sudo aptitude install maven
  4. Install Git
    sudo aptitude install git

You are done!

Configuration

In order to get started with the development we need the code to work with. The public repository with the source code is located at https://github.com/ecsec/open-ecard which needs to be cloned. How to clone a repository depends on the git integration in the used IDE or editor. The general process on the command line is as follows and should be the same on all platforms.

  1. Clone the repository
    git clone https://github.com/ecsec/open-ecard.git
  2. Switch into the source directory
    cd open-ecard
  3. Initialize and clone the BouncyCastle submodule
    git submodule update --init

You may now open the project in your preferred IDE or editor and start developing but be sure to have read the necessary documents regarding the development and contributions to the project.

Further Reading

This section contains a collection of links to topics which are also relevant for the development process.

Updated by Hans-Martin Haase over 8 years ago · 9 revisions

Also available in: PDF HTML TXT