Ich entwickle eine Reihe von Projekten (derzeit als Eclipse-Projekte organisiert). Es gibt ein Kernprojekt, das hauptsächlich die Kern-API und einige sekundäre Implementierungen und abstrakte Klassen bereitstellt. Alle anderen Projekte hängen von diesem Projekt ab.Anwendung maven groupId Namenskonvention
Bei der Integration der Projekte in unser Maven-Repository haben wir Probleme mit den Maven-Namenskonventionen. Wie in SO diskutiert, sollte die GroupId in der Regel der umgekehrte Firmendomänenname (com.example
) plus der Projektname (com.example.foo
) sein. Die Maven-Namenskonventionen schlagen ein zusätzliches Postfix für Unterprojekte wie Plugins vor (com.example.foo.plugin
).
In unserem Fall haben wir keine Plugins, sondern mehrere (größtenteils unabhängige) Implementierungen der API, die vom Kernprojekt bereitgestellt werden. Unser aktuelle Namensgebung Vorschlag ist:
com.example.foo
als groupId aller Projekte, auch wenn sie in verschiedene Java-Pakete aufgeteilt werden (com.example.foo
enthält die API,com.example.foo.bar
enthält diebar
Implementierung)- die Projektnamen als artifactId , ohne ein Präfix
der entscheidende Punkt für das Projekt (bar
statt foo-bar
) bezieht, ist, dass (obwohl unsere Projekte accross Pakete verteilt sind, wie oben beschrieben) sind sie nicht wirklich sub-p Projekte des API-Kernprojekts.
Entspricht dieser Vorschlag den Namenskonventionen von Maven?
Nur für den Fall: Diese Frage ist nicht, die nach empained Antworten aber für eine argumentative Antwort auf die oben genannte Frage fragen.
Ich muss ehrlich sagen, ich würde nie so viel Gedanken in Maven Namenskonvention setzen :-) – kaqqao
@kaqqao Nun, wir tun :) –