Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Sirius/Contributor Guide"

(Development Environment)
(Development Environment)
Line 11: Line 11:
 
* Optional: ''Git 1.8'' or later, available from http://git-scm.com/downloads, if you need/want to use the command-line for commit/push/merge/rebase/etc.
 
* Optional: ''Git 1.8'' or later, available from http://git-scm.com/downloads, if you need/want to use the command-line for commit/push/merge/rebase/etc.
 
* Optional: ''Target Platform Definition DSL and Generator 2.0 or later'', available from http://mbarbero.github.io/fr.obeo.releng.targetplatform/p2/latest/. Needed only if you need to change the Target Platform definition files (<code>*.targetplatform</code> and <code>*.tpd</code>) and re-generate the <code>*.target</code> files. In normal development you do not need this and can simply use the generated <code>*.target</code> themselves.
 
* Optional: ''Target Platform Definition DSL and Generator 2.0 or later'', available from http://mbarbero.github.io/fr.obeo.releng.targetplatform/p2/latest/. Needed only if you need to change the Target Platform definition files (<code>*.targetplatform</code> and <code>*.tpd</code>) and re-generate the <code>*.target</code> files. In normal development you do not need this and can simply use the generated <code>*.target</code> themselves.
 +
 +
Of course you are free to use any additional tools you want to make your development experience more pleasant for you. However, do not commit anything which adds new requirements without getting approval from the development team.
  
 
= Getting the Sources =
 
= Getting the Sources =

Revision as of 04:59, 21 March 2014

Development Environment

The standard environment to develop Sirius itself is currently:

  • Java 1.6. You can use a JRE 1.7 (or later) to run your Eclipse developement environement if you want, but you need a Java 1.6 installed and configured as the default in your Eclipse to make sure the Sirius code works with 1.6.
  • Eclipse 4.3.2 (Kepler SR2) SDK, with the following additional plug-ins:
    • EMF SDK 2.9.2, available from the Kepler update-site: required to manage our meta-models and generate the corresponding code.
    • Eclipse CheckStyle Plug-in 5.6.1, available from http://eclipse-cs.sf.net/update/: required to make sure new code follows the CheckStyle-enforced rules.
    • Mylyn WikiText, available from the Kepler update-site: required to re-generated the HTML documentation from the Textile sources.
    • EGit 3.3.0: required to get the Sirius sources (not strictly required actually, if you prefer to use the command-line exclusively).
  • Maven 3.0 or 3.1, available from http://maven.apache.org/: required to build from the command-line (and make sure your changes will not break the build).
  • Optional: Git 1.8 or later, available from http://git-scm.com/downloads, if you need/want to use the command-line for commit/push/merge/rebase/etc.
  • Optional: Target Platform Definition DSL and Generator 2.0 or later, available from http://mbarbero.github.io/fr.obeo.releng.targetplatform/p2/latest/. Needed only if you need to change the Target Platform definition files (*.targetplatform and *.tpd) and re-generate the *.target files. In normal development you do not need this and can simply use the generated *.target themselves.

Of course you are free to use any additional tools you want to make your development experience more pleasant for you. However, do not commit anything which adds new requirements without getting approval from the development team.

Getting the Sources

  • Get the PSF at...
  • Window > Preferences > Plug-in Development: Set "Missing API Baseline" to "Warning"
  • Open one of the .target files from releng/org.eclipse.sirius.targets in the target editor and (once it is loaded) set it as the current target

Build

Inside Eclipse

Building using Maven/Tycho

Proposing Patches using Gerrit

Back to the top