This page was moved to https://cwiki.apache.org/confluence/display/CAUSEWAY/SettingUpDevelopmentEnvironment
Click in the link above if you are not automatically redirected in 10 seconds.



Note: if you just want to try out Isis then there's no need to built it first; just use our quickstart maven archetype


Introduction

This is a quick guide explaining the prerequisites for developing. Most of the contributors in the community use Eclipse, but if you use some other IDE (IntelliJ, NetBeans etc) please feel free to update this page.

nb: This stuff should be in docbook (and the starobjects.org umbrella project has some stuff we can take-on, see: http://starobjects.sourceforge.net/m2-site/main/documentation/docbkx/html/developers-guide/developers-guide.html and http://starobjects.sourceforge.net/m2-site/main/documentation/docbkx/pdf/developers-guide.pdf)

Where next?

Once you've got your development environment set up, move on to look at BuildProcess

Java, Subversion, Maven

For now, just a rough list:

  • Java 6 JDK
    • We're targetting at least jdk1.6.0_11, nothing particular special about this release, it's the version that Rob has on his Ubuntu and it "works for him"
  • Subversion 1.6.x
  • Maven 2.2.1 (and point m2eclipse towards)
    • although Maven 3.0.0 could in theory be used to build Isis, the site plugin has changed in 3.0.0 and so we haven't yet reworked the POMs for thi. Therefore Maven 3.0.0 is not officially supported by us, and we've used the maven-enforcer-plugin to only allow the builds for [2.2.1,3.0.0); See ISIS-11 for more on this.

Set environment variables:

  • JAVA_HOME
  • M2_HOME
  • MAVEN_OPTS
    • -Xms512m -Xmx2048m -XX:PermSize=256m -XX:MaxPermSize=512m

Checking out the code

Anonymous read-only access:

Committer read-write access:

Eclipse

Plugins (to build the code)

  • Eclipse 3.6 Java edition
  • subclipse for Subversion
  • m2eclipse for maven
    • Windows>Preferences>Maven>Installations
      • and point to your external maven installation

For Contributors

Templates (for all)

  • trunk/src/site/resources/ide/eclipse/templates
    • isis-templates.xml
    • jmock2-templates.xml
    • junit4-templates.xml

Templates (for contributors only)

  • trunk/src/site/resources/ide/eclipse/templates
    • Apache-code-style-formatting.xml
    • Apache-code-style-template.xml
    • Apache-Isis-code-style-cleanup.xml

Code Quality (for contributors only)

NB: these are likely to evolve

  • trunk/src/site/resources/codequality
    • checkstyle.xml
    • pmd.xml

Setting up IRC client

We have an IRC chatroom #apache-isis on freenode. You can use any IRC client you want. If you don't habitually use an IRC client, then you might want to try freenode's webchat client which you can run from in your web browser. See IrcWebChat for more info.

  • No labels