Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[aether-users] Maven Extension Plugins and use of Aether

Hi there,

I tried to "convert" a Maven Plugin (that is an extension too) to Maven 3.1.x according to this doco here:
http://wiki.eclipse.org/Aether/Using_Aether_in_Maven_Plugins

But when I applied the changes explained on that page (removed sonatype aether, added eclipse aether, and other needed POM changes, and related code changes like package renames), I got following breakage when given plugin executed with Maven 3.1.1 (just a message):

===
A type incompatibility occured while executing org.sonatype.nexus:nexus-plugin-bundle-maven-plugin:1.2-SNAPSHOT:generate-metadata: org.eclipse.aether.internal.impl.ObjectPool cannot be cast to org.eclipse.aether.internal.impl.ObjectPool
===

This made me think that Eclipse Aether was "lifted" into extension class loader too... (and the class loaded by Maven Core classloader and extension classloader conflicted).

I fixed that problem by making all Ecipse Aether (and Maven Core) related dependencies scoped as "provided".

So, a question: is the POM excerpt on that wiki page actually missing a "provided" scope for Aether dependencies?

On a side note (a bit off topic for Aether list): I thought that Maven will "filter out" dependencies that are already in core (like Aether), and will provide them to plugin from core... Does it mean that filtering does not work for extensions?


Thanks,
~t~

Back to the top