On Fri, November 23, 2007 3:35 pm, Jörg Schaible wrote:

> I know why my plugin fails, but I don't know why other maven plugins can
> handle the situation. I did now a bad hack and will look for the attached
> artifact at the same location as the main artifact is located and only if
> I cannot find it locally I will use the ArtifactResolver. Nevertheless I
> am interested in the "proper" solution.

Artificts should only ever be found in one of two locations: the current
project, or the local repository (after possibly downloading it fronm a
central repository, if appropriate).

> This is dangerous and highly discouraged. We have quite a lot of artifacts
> and if the release manager simply performs "release:prepare", but fails to
> perform the release itself, the build will at least fail for the next
> artifact that is dependend on the new release.

This makes no sense - why would the build fail because an artifact is
present? The build should only fail if the artifact is absent, which it
will be if default release:prepare behaviour is followed.

If the concern is that possible unreleased jars end up in the local
repository, then the real problem is that release:prepare is trying to run
a build *after* the change of version number from SNAPSHOT to released,
instead of before.

> With your variant the
> prepared, but not yet released artifact is found in the release manager's
> local repository and he will never recognize that the final artifact has
> neither been build nor deployed.

In our case the person performing a release is responsible for running
both release:prepare and release:perform, making this largely a non issue.

The underlying problem is that maven supports a single common local repo
to look for all artifacts, and I personally believe that it should work
this way. The release:prepare tests should be ideally be done using
SNAPSHOT version numbers, and this problem can be worked around.

Regards,
Graham
--



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to