Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "MT4E FAQ"
(New page: Some things that you might want to know about Maven Tools 4 Eclipse: == How Are Eclipse Bundle Names Converted To Maven Artifact Coordinates? == There are many ways to convert Eclips...) |
m (Language) |
||
Line 11: | Line 11: | ||
# The version is truncated to three numbers: <tt>3.7.0</tt> | # The version is truncated to three numbers: <tt>3.7.0</tt> | ||
− | Reasoning: The third word in the bundle name is the project. This is good | + | Reasoning: The third word in the bundle name is the project. This is a good way to group artifacts by project. |
The whole name is repeated because there are 27 bundles that end in "runtime" in my 3.7.1/Helios install. That would mean for web projects: Several <tt>runtime-3.7.0.jar</tt> in the <tt>WEB-INF/lib</tt> folder and a) no easy way to tell them apart and b) errors during the build. Things would be similar for non-web projects. Yes, it's redundant but it was the most simple way to avoid a whole load of trouble. | The whole name is repeated because there are 27 bundles that end in "runtime" in my 3.7.1/Helios install. That would mean for web projects: Several <tt>runtime-3.7.0.jar</tt> in the <tt>WEB-INF/lib</tt> folder and a) no easy way to tell them apart and b) errors during the build. Things would be similar for non-web projects. Yes, it's redundant but it was the most simple way to avoid a whole load of trouble. |
Revision as of 06:35, 22 February 2012
Some things that you might want to know about Maven Tools 4 Eclipse:
How Are Eclipse Bundle Names Converted To Maven Artifact Coordinates?
There are many ways to convert Eclipse bundle names (say org.eclipse.core.runtime 3.7.0.v20110110) to Maven artifact coordinates (groupId:artifactId:version).
For MT4E, this rule was chosen:
- The first three words in the bundle name become the group ID: org.eclipse.core
- The whole bundle name becomes the artifact ID: org.eclipse.core.runtime
- The version is truncated to three numbers: 3.7.0
Reasoning: The third word in the bundle name is the project. This is a good way to group artifacts by project.
The whole name is repeated because there are 27 bundles that end in "runtime" in my 3.7.1/Helios install. That would mean for web projects: Several runtime-3.7.0.jar in the WEB-INF/lib folder and a) no easy way to tell them apart and b) errors during the build. Things would be similar for non-web projects. Yes, it's redundant but it was the most simple way to avoid a whole load of trouble.
Truncating the version was one thing that feels unsafe. The reasons for truncating are:
- Odd qualifiers like R36x_v20101208-1400 or huge cartographic checksums.
- The qualifier has often the same meaning as Maven's SNAPSHOT except for one specific which becomes the release.
- Only very few people are able to tell whether v20100824-2220 or v20100507-1815 is the release version. For almost anyone, the qualifier is just confusing and holds little value.
- The official Eclipse version numbers are 3 integers plus a qualifier. The qualifier is not important when different versions of a bundle are considered.
- Each release must change the version number (the part without qualifier)
- Requiring the qualifier would mean that it becomes impossible to write POM files without external tools or cut&paste of version numbers from a web page.