Getting Started » History » Version 9
Hans-Martin Haase, 08/12/2015 08:14 AM
Extend further reading section
1 | 8 | Hans-Martin Haase | {{toc}} |
---|---|---|---|
2 | |||
3 | 1 | Johannes Schmölz | h1. Getting Started |
4 | |||
5 | This guide will give you a short briefing of how to get your development environment up and running within a few minutes. |
||
6 | |||
7 | |||
8 | h2. Basic Setup |
||
9 | |||
10 | 4 | Hans-Martin Haase | For the basic setup of your development environment you need to obtain the following tools and programs: |
11 | 1 | Johannes Schmölz | |
12 | 4 | Hans-Martin Haase | * The "Java Development Kit":http://www.oracle.com/technetwork/java/javase/downloads/index.html (JDK) version 7 or higher |
13 | 1 | Johannes Schmölz | * A text editor or an IDE |
14 | 4 | Hans-Martin Haase | * "Maven":http://maven.apache.org/ version 3.0.5 or higher |
15 | 1 | Johannes Schmölz | * "Git":http://git-scm.com/ |
16 | 4 | Hans-Martin Haase | * Optional the Android SDK if you want to help developing the Android client |
17 | 1 | Johannes Schmölz | |
18 | 2 | Johannes Schmölz | 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. |
19 | 1 | Johannes Schmölz | |
20 | |||
21 | h3. Windows |
||
22 | |||
23 | 2 | Johannes Schmölz | # Download and install the "Java Development Kit":http://www.oracle.com/technetwork/java/javase/downloads/index.html |
24 | 4 | Hans-Martin Haase | Version 7 of the JDK is sufficient, but we strongly recommend to use the most recent version. |
25 | 1 | Johannes Schmölz | # Get an editor or an IDE of your choice and install it |
26 | 2 | Johannes Schmölz | Good IDEs for Java development are "NetBeans":http://www.netbeans.org/ and "Eclipse":http://www.eclipse.org/. If you prefer a pure text editor, "Notepad++":http://notepad-plus-plus.org/ is worth trying. |
27 | 3 | Johannes Schmölz | # Download and install the most recent version of "Maven":http://maven.apache.org/ |
28 | 2 | Johannes Schmölz | # Download "Git":http://git-scm.com/. |
29 | There are different options available in order to use Git on Windows: |
||
30 | 4 | Hans-Martin Haase | * "Git Extensions":http://gitextensions.github.io/ |
31 | Git Extensions is a graphical user interface for Git, that comes with Windows Explorer integration. It is based on "MSysGit":http://msysgit.github.io/. Our recommendation for Windows users. |
||
32 | * "TortoiseGit":https://tortoisegit.org |
||
33 | TortoiseGit is a port of TortoiseSVN. For those familiar with TortoiseSVN, TortoiseGit is worth trying. It requires "MSysGit":http://msysgit.github.io/. |
||
34 | * "MSysGit":http://msysgit.github.io/ |
||
35 | 1 | Johannes Schmölz | Git on the command line. |
36 | 2 | Johannes Schmölz | |
37 | 1 | Johannes Schmölz | You are done! |
38 | |||
39 | 3 | Johannes Schmölz | |
40 | 1 | Johannes Schmölz | h3. OS X |
41 | |||
42 | 6 | Hans-Martin Haase | # Download and install the "Java Development Kit":http://www.oracle.com/technetwork/java/javase/downloads/index.html |
43 | Version 7 of the JDK is sufficient, but we strongly recommend to use the most recent version. |
||
44 | # Get an editor or an IDE of your choice and install it. |
||
45 | Good IDEs for Java development are "NetBeans":http://www.netbeans.org/ and "Eclipse":http://www.eclipse.org/. |
||
46 | 7 | Hans-Martin Haase | # Download and install Git and Maven. We recommend to use "homebrew":http://homebrew.sh 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. |
47 | 1 | Johannes Schmölz | |
48 | 4 | Hans-Martin Haase | You are done! |
49 | 1 | Johannes Schmölz | |
50 | h3. Linux |
||
51 | |||
52 | 4 | Hans-Martin Haase | 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":http://packages.debian.org/aptitude, a front-end for "Debian's":http://www.debian.org "Advanced Package Tool":http://wiki.debian.org/Apt (APT). |
53 | 3 | Johannes Schmölz | |
54 | # Install "OpenJDK":http://openjdk.java.net/ |
||
55 | OpenJDK 7: @sudo aptitude install openjdk-7-jdk@ |
||
56 | 4 | Hans-Martin Haase | OpenJDK 8: @sudo aptitude install openjdk-8-jdk@ |
57 | If you prefer the Oracle JDK, you have to download and install it manually. You can get it from "here":http://www.oracle.com/technetwork/java/javase/downloads/index.html. |
||
58 | 3 | Johannes Schmölz | # Install an editor or an IDE of your choice |
59 | If you want to use a plain text editor, we recommend "Emacs":https://www.gnu.org/software/emacs/: @sudo aptitude install emacs@ |
||
60 | "NetBeans":http://www.netbeans.org/: @sudo aptitude install netbeans@ |
||
61 | "Eclipse":http://www.eclipse.org: @sudo aptitude install eclipse@ |
||
62 | *Note:* If you want to use the most recent version of "NetBeans":http://www.netbeans.org/ or "Eclipse":http://www.eclipse.org, which is recommended, you should obtain the installer packages from the official websites and perform a manual installation. |
||
63 | # Install "Maven":http://maven.apache.org/ |
||
64 | @sudo aptitude install maven@ |
||
65 | # Install "Git":http://git-scm.com/ |
||
66 | @sudo aptitude install git@ |
||
67 | |||
68 | You are done! |
||
69 | 1 | Johannes Schmölz | |
70 | |||
71 | h2. Configuration |
||
72 | |||
73 | 5 | Hans-Martin Haase | 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. |
74 | 1 | Johannes Schmölz | |
75 | 5 | Hans-Martin Haase | # Clone the repository |
76 | @git clone https://github.com/ecsec/open-ecard.git@ |
||
77 | # Switch into the source directory |
||
78 | @cd open-ecard@ |
||
79 | # Initialize and clone the BouncyCastle submodule |
||
80 | @git submodule update --init@ |
||
81 | 1 | Johannes Schmölz | |
82 | 5 | Hans-Martin Haase | 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. |
83 | |||
84 | 1 | Johannes Schmölz | h2. Further Reading |
85 | |||
86 | 5 | Hans-Martin Haase | This section contains a collection of links to topics which are also relevant for the development process. |
87 | |||
88 | * [[code-style|Code Style Guideline]]: Information about code formatting, Javadoc creation. |
||
89 | * [[Repository Guidelines]]: Detailed information about the repository, their usage and commit rules. |
||
90 | 9 | Hans-Martin Haase | * [[Logging Guidelines]]: Information about the Logger API and the used backend. |
91 | * [[Test Guidelines]]: Information about unit and integration tests. |
||
92 | * [[contribs_and_Licensing|Contributions and Licensing]]: Detailed information about license related topic regarding contributions to the core and development of addons. |