Update dev-setup to use IntelliJ instead
Change-Id: I888ff0eacf5b3cb6ad7ec002c74f113c6ffcd497
Reviewed-on: https://asterix-gerrit.ics.uci.edu/1005
Reviewed-by: Taewoo Kim <wangsaeu@yahoo.com>
diff --git a/content/community.html b/content/community.html
index c95bb47..a9f0987 100644
--- a/content/community.html
+++ b/content/community.html
@@ -261,7 +261,7 @@
<tr>
<td><img src="img/team/murtadha_hubail.jpg" width="100" height="100" /></td>
<td>Murtadha Hubail</td>
- <td>UC Irvine</td>
+ <td>Saudi Aramco</td>
<td>mhubail</td>
</tr>
<tr>
diff --git a/content/dev-setup.html b/content/dev-setup.html
index a584074..09fe42e 100644
--- a/content/dev-setup.html
+++ b/content/dev-setup.html
@@ -113,7 +113,7 @@
<li><a href="#yarn-installer" id="markdown-toc-yarn-installer">YARN Installer</a></li>
</ul>
</li>
- <li><a href="#setting-up-an-asterix-development-environment-in-eclipse" id="markdown-toc-setting-up-an-asterix-development-environment-in-eclipse">Setting up an Asterix Development environment in Eclipse</a> <ul>
+ <li><a href="#setting-up-an-asterix-development-environment" id="markdown-toc-setting-up-an-asterix-development-environment">Setting up an Asterix Development environment</a> <ul>
<li><a href="#prerequisites" id="markdown-toc-prerequisites">Prerequisites</a></li>
<li><a href="#steps" id="markdown-toc-steps">Steps</a></li>
</ul>
@@ -152,7 +152,7 @@
<hr />
-<h2 id="setting-up-an-asterix-development-environment-in-eclipse">Setting up an Asterix Development environment in Eclipse</h2>
+<h2 id="setting-up-an-asterix-development-environment">Setting up an Asterix Development environment</h2>
<h3 id="prerequisites">Prerequisites</h3>
<ul>
@@ -164,6 +164,8 @@
<h3 id="steps">Steps</h3>
+<h4 id="general-setup">General setup</h4>
+
<ol>
<li>
<p>Check out AsterixDB master in one folder via git in the command line. Assume that the path is <code>$HOME/workspace</code>.</p>
@@ -180,6 +182,37 @@
mvn install -DskipTests
</code></pre>
</li>
+</ol>
+
+<h4 id="intellij-idea-ide-setup">IntelliJ IDEA IDE Setup</h4>
+
+<ol>
+ <li>In IntelliJ IDEA, import asterixdb as an existing Maven Project.
+ <ul>
+ <li><code>File -> New -> Project from existing sources</code>, or `Import project…’ when on a new install</li>
+ <li>Then, select the ‘pom.xml’ in the root of the checked out git repository.</li>
+ <li>The default options for import should suffice, so just click <code>Next</code></li>
+ <li>Also click <code>Next</code> when selecting for profiles and versions</li>
+ <li>On the JDK Selection screen, be sure to select a JDK > 1.8, OpenJDK or Oracle is fine.</li>
+ <li>Give IntelliJ some time to import the Maven project and its dependencies</li>
+ <li>Once everything is finished, you should see ‘asterixdb’ and ‘hyracks-fullstack’ modules in the “Project” view.</li>
+ </ul>
+ </li>
+ <li>Set up IntelliJ code formatting rules
+ <ul>
+ <li>Download files <a href="https://cwiki.apache.org/confluence/download/attachments/61322291/AsterixCodeFormatProfile.xml">AsterixCodeFormatProfile.xml</a>
+ <a href="https://cwiki.apache.org/confluence/download/attachments/61322291/AsterixCleanupFormatProfile.xml">AsterixCleanupFormatProfile.xml</a></li>
+ <li>Import profiles into IntelliJ</li>
+ <li><code>File -> Settings -> Editor -> Code Style -> Java</code></li>
+ <li>Then, click the <code>Manage...</code> button</li>
+ <li>Click <code>Import</code> and import the <code>AsterixCodeFormatProfile.xml</code> as an Eclipse XML profile.</li>
+ </ul>
+ </li>
+</ol>
+
+<h4 id="eclipse-ide-setup">Eclipse IDE Setup</h4>
+
+<ol>
<li>In Eclipse, import asterixdb as an existing Maven Project.
<ul>
<li><code>File -> Import -> Maven -> Existing Maven Projects -> Next</code></li>
diff --git a/dev-setup.md b/dev-setup.md
index 75642cc..f1f66ab 100644
--- a/dev-setup.md
+++ b/dev-setup.md
@@ -29,7 +29,7 @@
---
-## Setting up an Asterix Development environment in Eclipse
+## Setting up an Asterix Development environment
### Prerequisites
* A suitable \*nix environment (Linux, OSX)
@@ -39,6 +39,8 @@
### Steps
+#### General setup
+
1. Check out AsterixDB master in one folder via git in the command line. Assume that the path is `$HOME/workspace`.
git clone https://github.com/apache/asterixdb/
@@ -50,6 +52,28 @@
cd asterixdb/
mvn install -DskipTests
+#### IntelliJ IDEA IDE Setup
+
+
+3. In IntelliJ IDEA, import asterixdb as an existing Maven Project.
+* `File -> New -> Project from existing sources`, or `Import project...' when on a new install
+* Then, select the 'pom.xml' in the root of the checked out git repository.
+* The default options for import should suffice, so just click `Next`
+* Also click `Next` when selecting for profiles and versions
+* On the JDK Selection screen, be sure to select a JDK > 1.8, OpenJDK or Oracle is fine.
+* Give IntelliJ some time to import the Maven project and its dependencies
+* Once everything is finished, you should see 'asterixdb' and 'hyracks-fullstack' modules in the "Project" view.
+
+4. Set up IntelliJ code formatting rules
+* Download files [AsterixCodeFormatProfile.xml](https://cwiki.apache.org/confluence/download/attachments/61322291/AsterixCodeFormatProfile.xml)
+ [AsterixCleanupFormatProfile.xml](https://cwiki.apache.org/confluence/download/attachments/61322291/AsterixCleanupFormatProfile.xml)
+* Import profiles into IntelliJ
+ * `File -> Settings -> Editor -> Code Style -> Java`
+ * Then, click the `Manage...` button
+ * Click `Import` and import the `AsterixCodeFormatProfile.xml` as an Eclipse XML profile.
+
+#### Eclipse IDE Setup
+
3. In Eclipse, import asterixdb as an existing Maven Project.
* `File -> Import -> Maven -> Existing Maven Projects -> Next`
* Specify the Root directory as `asterixdb` and then click Next until Finish is enabled.
@@ -85,7 +109,7 @@
First, to contribute patches to AsterixDB, you should have an ICLA on file with the Apache Software Foundation.
For details see the ASF website [here](https://www.apache.org/dev/new-committers-guide.html#cla)
-You should only need to perform the following steps once.
+You should only need to perform the following steps once.
Our Gerrit server is [here](https://asterix-gerrit.ics.uci.edu/)
@@ -151,7 +175,7 @@
## Making Changes - working method
- 1. When you want to start working on a bug, feature, etc, first make a local `git` branch. Never work directly on
+ 1. When you want to start working on a bug, feature, etc, first make a local `git` branch. Never work directly on
`master`! `master` should always be a pure mirror of `origin/master`, i.e., the GitHub mirror or the ASF repository.
git checkout -b my_branch