Jump to: navigation, search

Difference between revisions of "Maven Tools 4 Eclipse"

(New page: Maven Tools 4 Eclipse (or m4e for short) is a set of tools to convert OSGi bundles into Maven artifacts. You can find the project on Github: https://github.com/digulla/org.eclipse.dash.m4...)
 
(Updated for new Groovy version)
Line 1: Line 1:
 
Maven Tools 4 Eclipse (or m4e for short) is a set of tools to convert OSGi bundles into Maven artifacts.
 
Maven Tools 4 Eclipse (or m4e for short) is a set of tools to convert OSGi bundles into Maven artifacts.
  
You can find the project on Github: https://github.com/digulla/org.eclipse.dash.m4e.tools/
+
You can find the source on http://git.eclipse.org/c/dash/org.eclipse.dash.m4e.tools.git/
  
It's written in Python. I just mention this because I happen to like Python. After installing [http://www.python.org/download/|Python 2.7] and [http://lxml.de/|lxml], you can forget about it.
+
This tool is used to create the Maven artifacts which you can find on Eclipse's [http://maven.eclipse.org/nexus/index.html Nexus server] at http://maven.eclipse.org/nexus/index.html
 
+
In fact, if you just want to use the Maven artifacts in your build, go to our [http://maven.eclipse.org/nexus/index.html|Nexus server] at http://maven.eclipse.org/nexus/index.html
+
  
 
== How it works ==
 
== How it works ==
Line 12: Line 10:
  
 
# Download an Eclipse release from http://www.eclipse.org/downloads/
 
# Download an Eclipse release from http://www.eclipse.org/downloads/
# Import it into a temporary using <tt>m4e-import.py</tt>
+
# Import it into a temporary Maven repo using <tt>./run.sh import</tt> <i>archive</i>
 
# Download the sources for the Eclipse release and/or other archives which contain Eclipse products or OSGi bundles.
 
# Download the sources for the Eclipse release and/or other archives which contain Eclipse products or OSGi bundles.
 
# Import them as well
 
# Import them as well
# Merge all repositories using <tt>m4e-merge.py</tt>
+
# Merge all repositories using <tt>./run.sh merge</tt>
# The sources are in the wrong place. Fix that with <tt>m4e-attach-sources.py</tt>
+
# The sources are in the wrong place. Fix that with <tt>./run.sh attach-sources</tt>
# Fix any know problems by applying the patches in the <tt>patches/</tt> folder using the tool <tt>m4e-apply-patches.py</tt>
+
 
# Check the result with <tt>m4e-analyze.py</tt>
+
'''TODO''' These commands are not yet available with the Groovy version
# Create a POM with the version info to make sure your build picks the correct versions using the <tt>m4e-dm.py</tt> tool
+
 
 +
# Fix any know problems by applying the patches in the <tt>patches/</tt> folder using the tool <tt>./run.sh apply-patches</tt>
 +
# Check the result with <tt>./run.sh analyze</tt>
 +
# Create a POM with the version info to make sure your build picks the correct versions using the <tt>./run.sh dm</tt> tool
 +
# If anything goes wrong, use <tt>./run.sh clean</tt> to clean up temporary files and start over.
  
 
== How you should use it ==
 
== How you should use it ==
  
 +
'''TODO''' These commands are not yet available with the Groovy version
 
Overwhelmed? Here is a more simple version:
 
Overwhelmed? Here is a more simple version:
  
# <tt>git clone https://github.com/digulla/org.eclipse.dash.m4e.tools.git</tt>
+
# <tt>git clone git://git.eclipse.org/gitroot/dash/org.eclipse.dash.m4e.tools.git</tt>
 
# Download everything you will want and put it into the folder <tt>org.eclipse.dash.m4e.tools/downloads/</tt>
 
# Download everything you will want and put it into the folder <tt>org.eclipse.dash.m4e.tools/downloads/</tt>
# run <tt>org.eclipse.dash.m4e.tools/run.sh</tt> Yes, you need Linux or MacOS for that.
+
# run <tt>./run.sh convert</tt> Yes, you need Linux or MacOS for that.
 
# Grab some coffee. Not more than 12 cups per day, okay?
 
# Grab some coffee. Not more than 12 cups per day, okay?
 
# Check the HTML file which was created for any issues that you might care about.
 
# Check the HTML file which was created for any issues that you might care about.
Line 34: Line 37:
 
== Support ==
 
== Support ==
  
Please [https://bugs.eclipse.org/bugs/enter_bug.cgi?product=dash|file an issue for Project Dash].
+
Please [https://bugs.eclipse.org/bugs/enter_bug.cgi?product=dash&component=Maven file an issue for Project Dash, Component Maven].
  
 
== Biggest Issues Right Now ==
 
== Biggest Issues Right Now ==
  
# The name m4e sucks. [https://bugs.eclipse.org/bugs/show_bug.cgi?id=351174|Suggestions?]
+
# The name m4e sucks. [https://bugs.eclipse.org/bugs/show_bug.cgi?id=351174 Suggestions?]
# Rewrite the tool in Java. This would make the installation more simple but cause two new problems: Maintenance would be more expensive and the readability of the code would suffer.
+
 
# Find the time to create a repo with Eclipse 3.7
 
# Find the time to create a repo with Eclipse 3.7
 +
 +
== Old Python Version ==
 +
 +
You can find the original Python project on Github: https://github.com/digulla/org.eclipse.dash.m4e.tools/
 +
 +
It needs [http://www.python.org/download/ Python 2.7] and [http://lxml.de/ lxml].
 +
  
 
[[Category:Dash Project]]
 
[[Category:Dash Project]]

Revision as of 03:40, 26 July 2011

Maven Tools 4 Eclipse (or m4e for short) is a set of tools to convert OSGi bundles into Maven artifacts.

You can find the source on http://git.eclipse.org/c/dash/org.eclipse.dash.m4e.tools.git/

This tool is used to create the Maven artifacts which you can find on Eclipse's Nexus server at http://maven.eclipse.org/nexus/index.html

How it works

A simple workflow:

  1. Download an Eclipse release from http://www.eclipse.org/downloads/
  2. Import it into a temporary Maven repo using ./run.sh import archive
  3. Download the sources for the Eclipse release and/or other archives which contain Eclipse products or OSGi bundles.
  4. Import them as well
  5. Merge all repositories using ./run.sh merge
  6. The sources are in the wrong place. Fix that with ./run.sh attach-sources

TODO These commands are not yet available with the Groovy version

  1. Fix any know problems by applying the patches in the patches/ folder using the tool ./run.sh apply-patches
  2. Check the result with ./run.sh analyze
  3. Create a POM with the version info to make sure your build picks the correct versions using the ./run.sh dm tool
  4. If anything goes wrong, use ./run.sh clean to clean up temporary files and start over.

How you should use it

TODO These commands are not yet available with the Groovy version Overwhelmed? Here is a more simple version:

  1. git clone git://git.eclipse.org/gitroot/dash/org.eclipse.dash.m4e.tools.git
  2. Download everything you will want and put it into the folder org.eclipse.dash.m4e.tools/downloads/
  3. run ./run.sh convert Yes, you need Linux or MacOS for that.
  4. Grab some coffee. Not more than 12 cups per day, okay?
  5. Check the HTML file which was created for any issues that you might care about.
  6. Upload the content of org.eclipse.dash.m4e.tools/tmp/m2repo/ somewhere where Maven can find it (~/.m2/repository/ or your Maven proxy).

Support

Please file an issue for Project Dash, Component Maven.

Biggest Issues Right Now

  1. The name m4e sucks. Suggestions?
  2. Find the time to create a repo with Eclipse 3.7

Old Python Version

You can find the original Python project on Github: https://github.com/digulla/org.eclipse.dash.m4e.tools/

It needs Python 2.7 and lxml.