james-server-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stefano Bagnara <apa...@bago.org>
Subject Re: [JSieve] pom's in stage
Date Mon, 08 Oct 2007 17:22:14 GMT
Robert Burrell Donkin ha scritto:
> On 10/8/07, Stefano Bagnara <apache@bago.org> wrote:
>> The alternative is still the #3 from the original post:
>>> 3) change the dependencies groupdIds/artifactIds for the "problematic"
>>> artifacts and move them to the new folders. Alter the pom to declare
>>> this new dependencies. E.g: move javax.mail/jars/mail-1.4.jar to
>>> org.apache.james.dep/jars/mail-1.4.jar or something similar. Even if we
>>> don't put there the poms mvn will work creating a "standard" pom with no
>>> dependencies and will deploy to the local repository our own "artifacts"
>>> without clashing with official poms/artifacts from central. This is make
>>> the offline build to work without placing bad stuff in the local
>>> repository but we will declare dependencies on artifacts not existing on
>>> central.
>> opinions?
> 
> #3 introduces bad meta-data into the maven repository

No, I proposed #3 because it does not put bad meta-data in the
repository. It only put there "custom" data. We should only take care to
use our own groupIds and no build will be corrupted by our poms.
Let's say we add "jsieve" or "james" to the groupId, we can be sure no
one else will have references to this artifacts.

IMHO the only drawback is that we cannot publish our "jsieve" pom in the
maven repository because we have dependencies on artifacts that are not
in the repository. But this already happens for james and mailets jars,
so I don't think this is a big issue. If we want to publish jsieve in a
maven repository we'll have to fix many other problems, first (or to
avoid declaring the dependencies).

> what would maven do if we just removed all the pom's from the local repository?

If we remove the poms and leave the jars under existing
groupId/jars/artifactId-version.jar scheme then it will try to lookup
the poms online, if it finds the pom it download it, otherwise it
creates simple poms with no dependencies (they contains artifactId,
groupId and version). This maven-generated poms are the ones that could
break any other project depending on the same artifacts and building
against the same local repository.

Stefano


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


Mime
View raw message