Skip to main content
Jump to: navigation, search

Difference between revisions of "M2E Development Environment"

(Submitting patches)
(Development environment setup)
Line 5: Line 5:
 
Download and unpack Eclipse latest SDK Kepler build from http://download.eclipse.org/eclipse/downloads/ . The instructions below assume fresh/clean Eclipse installation.
 
Download and unpack Eclipse latest SDK Kepler build from http://download.eclipse.org/eclipse/downloads/ . The instructions below assume fresh/clean Eclipse installation.
  
Install m2e 1.4 or newer from http://download.eclipse.org/technology/m2e/releases . This is a P2 repository URL, use Eclipse Install UI to use it as explained in http://help.eclipse.org/topic//org.eclipse.platform.doc.user/tasks/tasks-127.htm
+
Install m2e 1.5 or newer from http://download.eclipse.org/technology/m2e/releases . This is a P2 repository URL, use Eclipse Install UI to use it as explained in http://help.eclipse.org/topic//org.eclipse.platform.doc.user/tasks/tasks-127.htm
  
Clone m2e-core repository. Committers should use ssh://YOUR_COMMITTERID@git.eclipse.org:29418/m2e/m2e-core. For other ways to access m2e git repository, including read-only anonymous access see https://git.eclipse.org/r/#/admin/projects/m2e/m2e-core
+
Clone org.eclipse.m2e.workspace repository, see https://git.eclipse.org/r/#/admin/projects/m2e/org.eclipse.m2e.workspace for the list of available protocols.
  
Import m2e-core as existing maven project. Follow onscreen instructions, allow m2e to install additional software and restart eclipse when requested. Give Eclipse some time to update project configuration after restart. You may need to do Project/Clean.../Clean_all_projects to clear all compilation errors.
+
Clone m2e-core repository, see https://git.eclipse.org/r/#/admin/projects/m2e/m2e-core for the list of available protocols.
  
Clone m2e-core-tests repository. Developers should use git@github.com:tesla/m2e-core-tests.git. See https://github.com/tesla/m2e-core-tests for other ways to clone m2e-core-tests repository.
+
Clone m2e-core-tests repository, see https://github.com/tesla/m2e-core-tests for the list of available protocols.
  
Import m2e-core-tests as existing maven project.
+
Import org.eclipse.m2e.workspace, m2e-core and m2e-core-tests as existing maven projects. Follow onscreen instructions, allow m2e to install additional software and restart eclipse when requested. Give Eclipse some time to update project configuration after restart. You may need to do Project/Clean.../Clean_all_projects to clear all compilation errors.
  
 
== Running m2e automated regressions tests from Eclipse ==
 
== Running m2e automated regressions tests from Eclipse ==

Revision as of 14:04, 14 August 2014

M2E
Website
Download
Community
Mailing ListForumsIRCmattermost
Issues
OpenHelp WantedBug Day
Contribute
Browse Source

Development environment setup

Download and unpack Eclipse latest SDK Kepler build from http://download.eclipse.org/eclipse/downloads/ . The instructions below assume fresh/clean Eclipse installation.

Install m2e 1.5 or newer from http://download.eclipse.org/technology/m2e/releases . This is a P2 repository URL, use Eclipse Install UI to use it as explained in http://help.eclipse.org/topic//org.eclipse.platform.doc.user/tasks/tasks-127.htm

Clone org.eclipse.m2e.workspace repository, see https://git.eclipse.org/r/#/admin/projects/m2e/org.eclipse.m2e.workspace for the list of available protocols.

Clone m2e-core repository, see https://git.eclipse.org/r/#/admin/projects/m2e/m2e-core for the list of available protocols.

Clone m2e-core-tests repository, see https://github.com/tesla/m2e-core-tests for the list of available protocols.

Import org.eclipse.m2e.workspace, m2e-core and m2e-core-tests as existing maven projects. Follow onscreen instructions, allow m2e to install additional software and restart eclipse when requested. Give Eclipse some time to update project configuration after restart. You may need to do Project/Clean.../Clean_all_projects to clear all compilation errors.

Running m2e automated regressions tests from Eclipse

Add the following memory configuration parameters to JVM startup options

  -XX:MaxPermSize=256m -Xmx1G

Use JUnit_Plug-in_Tests launch configuration type to run/debug m2e automated regressions tests from Eclipse.

Caveat. Two tests are expected to fail when run from Eclipse

  1. ProjectRegistryManagerTest#testEnvironmentVariablesConsidered requires TEMP environment variable to be set and is expected to failed when run from Eclipse.
  2. MarkerTest#test is rather sloppy and requires elaborate launch configuration setup to limit set of m2e extensions enabled during the test.

Both tests are expected to pass on command line (see instructions below).

Building m2e on command line

Building m2e on command line is a two step process, both performed from root of m2e-core checkout directory

First, you need to *install* m2e maven runtime to local maven repository

  mvn clean install -f m2e-maven-runtime/pom.xml

Then, package m2e update site

  mvn clean package

The repository is created under org.eclipse.m2e.site/target/repository directory.

Running m2e automated regression tests on command line

To run m2e automated regression tests, execute the following command from m2e-core-tests checkout directory

  mvn clean integration-test -Puts,its -fae -Dm2e-core.url=file://<full-path-to-m2e-repository>

Submitting patches

m2e core sources at eclipse.org

m2e only accepts changes contributed via Gerrit. Here is the wiki that explains how to use it http://wiki.eclipse.org/Gerrit . Good luck.

According to eclipse legal poster, all contributors must have signed Eclipse CLA and their bugzilla email and git commit author must match (otherwise Eclipse git server refuses contribution).

Note that m2e developers do NOT watch Gerrit submissions directly. All contributions must be referenced from corresponding bugzilla records.

m2e core tests at github

In most cases m2e core patches will require corresponding regression tests. Changes to m2e core tests repository must be submitted as github pull requests and must be linked to bugzilla record, along with corresponding Gerrit change set.

Back to the top