Anything to do with Eclipse and Maven Integration.
Including, but not limited to:
- Maven user's perspective: setting up an Eclipse Project derived from Maven's pom.xml
- Maven developer's perspective: debugging Maven in Eclipse
- Eclipse developer 's perspective: creating Eclipse artifacts (plugins, fragments, features, products, update sites, etc) via Maven
And any discussions needed to work out the design of how to get all this done and work with existing communities to pull this all together
see also: mevenide2-netbeans, maven-idea-plugin, Idea integration, ...
Maven user
These plugins provide varying levels of support Maven Integration into Eclipse Workbench
|
Maven Integration for Eclipse (m2eclipse) |
||
|---|---|---|---|
Eclipse project |
|
||
Eclipse Update Site |
|
http://q4e.googlecode.com/svn/trunk/updatesite/ | |
Eclipse Dev Update Site |
|
http://q4e.googlecode.com/svn/trunk/updatesite-dev/ | |
Project info |
|
|
|
releases |
12/2005 - 2.0 |
05/2006 - 0.0.9 |
08/2007 - 0.2.0 |
Open Source, License |
|
|
|
Number of committers (active) |
|
10 (7) stats |
|
Mailing lists |
Maven lists (no dedicated ones) |
||
issue tracking |
Jira MECLIPSE |
Jira MNGECLIPSE |
|
wiki |
|
||
Maven version |
any |
any |
2.1-SNAPSHOT why |
hosting |
|||
Required Java version |
1.4+ |
1.5+ |
1.5+ |
Supported Eclipse version |
n/a |
3.2, 3.3, 3.4 |
3.3, 3.4 |
Features |
|
|
|
Running Maven from the IDE |
n/a |
|
|
Quick navigation from build log to Surefire reports |
n/a |
|
|
Chose Maven version to run goals |
n/a |
|
|
allow to select/search goals to run |
n/a |
|
|
Cancel Maven builds |
n/a |
|
|
Filter Maven output (info,debug,error,downloads,...) |
n/a |
|
|
Automatic Eclipse classpath synchronized with Maven POM |
n/a |
|
|
Resolving dependencies from Eclipse Workspace |
|
||
Resolving dependencies from Eclipse Workspace for externally launched Maven |
|
||
Support resource filtering |
|
||
Automatic downloading of project dependencies when POM changed |
|
|
|
Automatic downloading of dependency sources |
|
|
|
Manual downloading sources for any jars |
|
|
|
Attaching custom sources and javadocs to Maven dependencies |
|
|
|
Dependency graph |
n/a |
||
Dependency analysis UI (find excluded, omitted, duplicated,... dependencies) |
n/a [1] |
||
Dependency management UI (force version, exclude dependency) |
n/a |
|
|
New Maven 2 project wizard using archetypes |
CLI |
|
|
Extensible archetype list sources (for new project wizard) |
CLI |
|
|
New Maven Module wizard |
n/a |
|
|
Import local Maven 2 projects |
CLI [2] |
||
Import Maven 2 projects from VCS (CVS, SVN, etc) |
|
|
|
Import Maven 2 projects from Maven artifacts |
|
|
|
Search and view artifact POMs from remote repositories |
n/a |
|
|
Form-based editor for entire Maven POM schema |
n/a |
|
|
Hyperlinking and content assistance in form-based POM editor |
n/a |
|
|
Completion in POM XML editor for POM model elements |
|
|
|
Completion in POM XML editor for Maven plugin configuration |
|
|
|
Configurable templates in POM XML editor |
|
|
|
Ctrl-click navigation in POM XML editor |
|
|
|
Navigation to pom, project, issue tracker, scm and ci sites from artifacts |
|
|
|
Browse content of remote repositories offline |
|
|
|
Quick search dependencies from remote Maven repos |
n/a |
|
|
Quick search dependencies on Local Maven repo |
n/a |
|
|
Quick Add dependency to POM |
n/a |
|
|
Quick Fix in Java editor for missing dependencies |
n/a |
|
|
Search and view classes from the artifacts in remote repositories |
n/a |
|
|
Basic integration with Team/CVS (checkout from CVS Repositories) |
|
|
|
Basic integration with Subclipse (checkout from SVN Repositories) |
n/a |
|
|
Basic integration with Subversive (checkout from SVN Repositories) |
n/a |
|
|
Basic integration with Maven SCM (checkout from CVS, SVN, Git, Mercurial and others) |
n/a |
|
|
Basic integration with Mylyn |
n/a |
|
|
Basic integration with WTP |
CLI [2] |
||
Basic integration with AJDT |
|
|
|
Debug Maven core and plugins |
|
||
Debug tests launched from Maven |
|
||
Debug Maven plugins from Eclipse Workspace |
|
[1] maven-dependency-plugin provides number of goals that can be used for extensive dependency analysis
[2] maven-eclipse-plugin allow to generate eclipse project metadata, so project can be imported using import existing project wizard
Maven developer
Debug Maven using Standalone Maven install
First of all you need to get corresponding Maven projects into the Eclipse workspace.
To debug Maven standalone Maven CLI you can set the following environment variable:
Then start Maven as usual and attach remote debugger to Maven process on port 8000 using Eclipse's "Remote Java Application" configuration.
Alternatively you could create the following "Java Application" launch configuration and launch it directly from Eclipse:
Main class |
org.codehaus.classworlds.Launcher |
classpath |
%M2_HOME%\boot\classworlds-1.1.jar |
VM arguments |
-Dclassworlds.conf=%M2_HOME%\bin\m2.conf |
Program arguments |
<maven cli arguments> |
Run and Debug Maven 2.1 from Eclipse Workspace with m2eclipse
You can run and debug Maven right from the Eclipse workspace with m2eclipse using the following instructions.
Debug Maven plugins using m2eclipse
With m2eclipse you can debug Maven core and Maven plugins while running goals using m2eclipse's "Maven Build" external tools launch configuration (or from Run As / Maven * shortcut from the popup menus). Simply put a break point in the corresponding classes and switch to the Debugger perspective.
You can also configure Maven surefire plugin to not fork new JVM to run tests and then you can even debug test classes launched using "Run As / Maven test" shortcut:
Debug Maven using Q4E
Q4E launches Maven in process, not in a new jvm for c. For debugging you'll need a second jvm running in debug mode.
The easiest way to debug both Q4E, Maven and everything run by both of them is to launch a new Eclipse workspace in Debug mode.
Go to Run - Debug and create a new Eclipse Application
In the plugins tab make sure you select all Q4E plugins and click add required plugins
A new Eclipse is launched in debug mode and you could run any Maven goal through the Run - Run Menu, new Maven 2 configuration. Breakpoints in the original Eclipse will be used. Surefire should be configured not to fork the tests in this case.
If you just want to debug tests run by Maven you could configure Surefire plugin to fork with this jvm parameters
When launching a goal that runs the tests the execution will stop just before and you can go to Run - Debug - New Remote Application attaching the remote debugger to port 8000.
Eclipse developer
Building Eclipse Plugins with Maven 2: http://www.eclipse.org/articles/article.php?file=Article-Eclipse-and-Maven2/index.html describes plugins from http://svn.codehaus.org/m2eclipse/maven-pst/.
Tycho project https://svn.sonatype.org/m2eclipse/tycho/trunk also see m2eclipse project build.
These plugins provide varying levels of support for building Eclipse artifacts with Maven
- OSGi stuff (deprecated)
- pde maven plugin: http://mojo.codehaus.org/pde-maven-plugin/
Other (or to be categorized)
- Felix bundle
- howto
