Niclas Hedhman wrote:
> On Tuesday 30 May 2006 10:00, Jeff McAffer wrote:
>
>
>> Niclas Hedhman <[EMAIL PROTECTED]> wrote on 05/29/2006 03:23:17 AM:
>>
>>> Any suggestions on how we should deal with Maven vs Eclipse naming?? Do
>>> we need to care?
>
>
>
> The other post was excellent, but...
>
>
>> IMHO we do need to care. This is a case of less is more. The Eclipse
>> community has developed a naming convention for its bundle JARs. As far
>> as I know, Maven does not have a convention since it covers a very wide
>> spectrum of usecases.
>
>
>
> There are a few restrictions imposed by Maven.
>
> * ArtifactID WILL become part of the filename together with Version
and Type.
> <finalname> is NOT respected for repository uploads. This would
require the
> FQDN style to use the FQDN in both group and artifact, generally
> discouraged by the Maven peeps, but totally doable.
>
> * Versions are appended to filename (as well as being part of the
directory
> structure) with a DASH. Underscore is not possible.
>
> * Versions during development contains -SNAPSHOT, which Equinox does
not like
> anywhere, and OSGi doesn't like in its own versioning (handled by
plugin).
What you're describing here is the default Maven repository layout. With
your own "osgi" layout you should be able to name your artifacts just
like you want. Check out [1] for how to translate an artifact to a path.
By having a "osgi" layout Maven should be able to both produce and
consume artifacts from osgi repositories directly.
> So, from my PoV it seems that Eclipse vs Maven is fairly incompatible
on this point, and I can only see three ways out;
>
> * Equinox makes concessions to support Maven's style.
>
> * Maven makes concessions to support Equinox's style.
>
> * We make a program that takes the published Maven artifacts, rename and
> republish to an Eclipse Update site, and possibly an OBR as well.
This can always be done as a extra deployment step when deploying a osgi
artifact. I assume you're going to make a osgi packaging which can
include such a step by default. This might be required anyway if you
need to update some extra index files or stuff like that.
[1]:
https://svn.apache.org/repos/asf/maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/repository/layout/ArtifactRepositoryLayout.java