Hi Karl Heinz,
if we're going to say that plugins are 3.0 compatible, this is the only
proper way.
You can't fix it in the older Maven3 versions anymore, they've already
been released.
So you must fix it in the plugin. This kind of logic is used by multiple
plugins, so a shared component the best solution.
I should take a look at the latest status. I've come pretty close to a
first release, though still a few hurdles to take.
thanks,
Robert
Op Sun, 19 Apr 2015 14:14:05 +0200 schreef Karl Heinz Marbaise
<khmarba...@gmx.de>:
Hi,
I have taken a look into maven-invoker and maven-install plugin and
found this thread and the maven-shared component
maven-artifact-transer...
It sounds like the above shared component seemed to be the only
reasonably way to go ?
Is my assumption correct? Or do we have other paths which we could try ?
Kind regards
Karl Heinz Marbaise
On 3/7/15 4:04 PM, Robert Scholte wrote:
Hi,
when we start requiring Maven 3.0 for our plugins, IMO they should all
work *without* depending on Maven Compat.
I've tried to do this for the maven-invoker-plugin and hit the first
issue.
They all have to do with artifacts: ArtifactInstaller,
ArtifactRepository, ArtifactRepositoryFactory, ArtifactResolver.
The original code doesn't describe what to do, but after some digging I
found this:
https://cwiki.apache.org/confluence/display/MAVEN/Compatibility+with+Maven+2.x
bq.
Maven Artifact
Maven Artifact will be entirely extricated from the core of Maven
3.x and replaced with Mercury, but we will make a best effort to
ensure the compatibility of plugins that use Maven Artifact. There
are, however, components and classes that are just so broken or conflict
with standard ways of doing resolution and conflict reduction that
we can't support them.
Supported Compatibility
•org.apache.maven.artifact.deployer.ArtifactDeployer
•org.apache.maven.artifact.factory.ArtifactFactory
•org.apache.maven.artifact.handler.ArtifactHandler
•org.apache.maven.artifact.installer.ArtifactInstaller
•org.apache.maven.artifact.manager.WagonManager (1)
•org.apache.maven.artifact.repository.ArtifactRepository
•org.apache.maven.artifact.repository.ArtifactRepositoryPolicy
•org.apache.maven.artifact.repository.ArtifactRepositoryFactory
•org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout
•org.apache.maven.artifact.resolver.ArtifactResolver
•org.apache.maven.artifact.resolver.filter.ArtifactFilter
•org.apache.maven.artifact.resolver.filter.Artifact
(1) In r746285 various methods have been removed from the
WagonManager which breaks the maven-project-info-reports-plugin, the
maven-site-plugin and the maven-stage-plugin, e.g. due to a
linkage error on getAuthentaticationInfo().
Unsupported Compatibility
•org.apache.maven.artifact.metadata.ArtifactMetadataSource
•org.apache.maven.artifact.metadata.ResolutionGroup
•org.apache.maven.artifact.repository.metadata.*
•org.apache.maven.artifact.resolver.ResolutionNode
•org.apache.maven.artifact.resolver.ResolutionListener
•org.apache.maven.artifact.resolver.metadata.*
•org.apache.maven.artifact.resolver.transform.*
•org.apache.maven.artifact.resolver.versioning.*
Mercury? I guess some of it is now part of Aether, but I think we should
keep the abstraction layer (remember the issues we got Aether moved from
Sonatype to Eclipse and the amount of workarounds).
What to do? Move them back, make new APIs for Maven4, like
ArtifactTransferor?
My first conclusion is that we can't make these plugins Maven3
compatible without the maven-compat, unless we embed the classes in the
plugin.
thanks,
Robert
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
For additional commands, e-mail: dev-h...@maven.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
For additional commands, e-mail: dev-h...@maven.apache.org