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 "Development Resources/HOWTO/The Eclipse Code Namespace Policy"
Line 19: | Line 19: | ||
Java package names use the "flat" or "short" project name in the third segment; they should not include, for example, the name of the top-level project or any parent/container project. | Java package names use the "flat" or "short" project name in the third segment; they should not include, for example, the name of the top-level project or any parent/container project. | ||
* e.g. <code>org.eclipse.graphiti.core</code>, not <strike><code>org.eclipse.modeling.mdt.graphiti.core</code></strike> or <strike><code>org.eclipse.mdt.graphiti.core</code></strike>. | * e.g. <code>org.eclipse.graphiti.core</code>, not <strike><code>org.eclipse.modeling.mdt.graphiti.core</code></strike> or <strike><code>org.eclipse.mdt.graphiti.core</code></strike>. | ||
+ | |||
+ | =Scala Package Names= | ||
+ | |||
+ | TBD | ||
=OSGi Bundle Names= | =OSGi Bundle Names= | ||
Line 24: | Line 28: | ||
OSGi Bundle names follow the same rules as [[#Java Package Names|Java Package Names]]. | OSGi Bundle names follow the same rules as [[#Java Package Names|Java Package Names]]. | ||
+ | =Maven= | ||
+ | |||
+ | ==Maven Group Ids== | ||
+ | {{Warning|This is a work in progress.}} | ||
+ | The Maven group id should follow the standard reverse DNS naming convention, i.e. <code>org.<forge></code> | ||
+ | * <code>org.eclipse</code> | ||
+ | * <code>org.locationtech</code> | ||
+ | * <code>org.polarsys</code> | ||
+ | |||
+ | For discussion, please see [https://locationtech.org/bugs/show_bug.cgi?id=28]. | ||
+ | |||
+ | ==Maven Artifacts== | ||
+ | |||
+ | ==Maven Versions== | ||
=Java Archive (JAR/WAR/EAR) Names= | =Java Archive (JAR/WAR/EAR) Names= | ||
Revision as of 13:44, 14 August 2014
Eclipse projects must carefully manage their namespaces in order to help identify the producer of components and avoid namespace collisions.
Exceptions to these guidelines must be approved by the Project Management Committee and the EMO.
Contents
Java Package Names
Java package names take the standard reverse DNS form:
org.<forge>.<shortname>.<component>.*
Where:
- forge is the short name of the hosting forge, e.g. "eclipse", "locationtech", or "polarsys";
- shortname is the short name of the project (i.e. the last segment of the project id), e.g. "dali", "egit", "udig"; and
- component is project-specific
Multiple component segments are permitted.
Examples:
-
org.eclipse.emf.core
,org.eclipse.emf.edit
,org.eclipse.emf.edit.ui
; and -
org.locationtech.udig.resources
Java package names use the "flat" or "short" project name in the third segment; they should not include, for example, the name of the top-level project or any parent/container project.
- e.g.
org.eclipse.graphiti.core
, notororg.eclipse.modeling.mdt.graphiti.core
.org.eclipse.mdt.graphiti.core
Scala Package Names
TBD
OSGi Bundle Names
OSGi Bundle names follow the same rules as Java Package Names.
Maven
Maven Group Ids
The Maven group id should follow the standard reverse DNS naming convention, i.e. org.<forge>
-
org.eclipse
-
org.locationtech
-
org.polarsys
For discussion, please see [1].
Maven Artifacts
Maven Versions
Java Archive (JAR/WAR/EAR) Names
TBD
JavaScript
TBD
This page is moderated by the EMO.