Skip to main content

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

Looks like a bug in maven, it's supposed to filter artifacts present in the core but apparently doesn't.

--
Regards,
Igor

On 2013-09-11 6:05 AM, Tamás Cservenák wrote:
Recreated, and Classworld realm dump is:

[ERROR] realm =
  plugin>org.sonatype.nexus:nexus-plugin-bundle-maven-plugin:1.2-SNAPSHOT
[ERROR] strategy =
org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
[ERROR] urls[0] =
file:/Users/cstamas/.m2/repository/org/sonatype/nexus/nexus-plugin-bundle-maven-plugin/1.2-SNAPSHOT/nexus-plugin-bundle-maven-plugin-1.2-SNAPSHOT.jar
[ERROR] urls[1] =
file:/Users/cstamas/.m2/repository/org/sonatype/nexus/nexus-plugin-bundle-model/1.2-SNAPSHOT/nexus-plugin-bundle-model-1.2-SNAPSHOT.jar
[ERROR] urls[2] =
file:/Users/cstamas/.m2/repository/com/google/code/findbugs/jsr305/2.0.1/jsr305-2.0.1.jar
[ERROR] urls[3] =
file:/Users/cstamas/.m2/repository/javax/enterprise/cdi-api/1.0/cdi-api-1.0.jar
[ERROR] urls[4] =
file:/Users/cstamas/.m2/repository/javax/annotation/jsr250-api/1.0/jsr250-api-1.0.jar
[ERROR] urls[5] =
file:/Users/cstamas/.m2/repository/javax/inject/javax.inject/1/javax.inject-1.jar
[ERROR] urls[6] =
file:/Users/cstamas/.m2/repository/com/google/guava/guava/10.0.1/guava-10.0.1.jar
[ERROR] urls[7] =
file:/Users/cstamas/.m2/repository/org/sonatype/sisu/sisu-guice/3.1.0/sisu-guice-3.1.0-no_aop.jar
[ERROR] urls[8] =
file:/Users/cstamas/.m2/repository/aopalliance/aopalliance/1.0/aopalliance-1.0.jar
[ERROR] urls[9] =
file:/Users/cstamas/.m2/repository/org/eclipse/sisu/org.eclipse.sisu.inject/0.0.0.M2a/org.eclipse.sisu.inject-0.0.0.M2a.jar
[ERROR] urls[10] =
file:/Users/cstamas/.m2/repository/asm/asm/3.3.1/asm-3.3.1.jar
[ERROR] urls[11] =
file:/Users/cstamas/.m2/repository/org/eclipse/aether/aether-spi/0.9.0.M2/aether-spi-0.9.0.M2.jar
[ERROR] urls[12] =
file:/Users/cstamas/.m2/repository/org/eclipse/aether/aether-impl/0.9.0.M2/aether-impl-0.9.0.M2.jar
[ERROR] urls[13] =
file:/Users/cstamas/.m2/repository/org/eclipse/aether/aether-api/0.9.0.M2/aether-api-0.9.0.M2.jar
[ERROR] urls[14] =
file:/Users/cstamas/.m2/repository/org/eclipse/aether/aether-util/0.9.0.M2/aether-util-0.9.0.M2.jar
[ERROR] urls[15] =
file:/Users/cstamas/.m2/repository/org/codehaus/plexus/plexus-interpolation/1.16/plexus-interpolation-1.16.jar
[ERROR] urls[16] =
file:/Users/cstamas/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.5.5/plexus-component-annotations-1.5.5.jar
[ERROR] urls[17] =
file:/Users/cstamas/.m2/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar
[ERROR] urls[18] =
file:/Users/cstamas/.m2/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar
[ERROR] urls[19] =
file:/Users/cstamas/.m2/repository/org/codehaus/plexus/plexus-utils/2.1/plexus-utils-2.1.jar
[ERROR] urls[20] =
file:/Users/cstamas/.m2/repository/org/apache/maven/plugins/maven-assembly-plugin/2.2-beta-5/maven-assembly-plugin-2.2-beta-5.jar
[ERROR] urls[21] =
file:/Users/cstamas/.m2/repository/org/apache/maven/shared/maven-common-artifact-filters/1.1/maven-common-artifact-filters-1.1.jar
[ERROR] urls[22] =
file:/Users/cstamas/.m2/repository/org/apache/maven/shared/maven-plugin-testing-harness/1.1/maven-plugin-testing-harness-1.1.jar
[ERROR] urls[23] =
file:/Users/cstamas/.m2/repository/org/codehaus/plexus/plexus-archiver/1.0-alpha-12/plexus-archiver-1.0-alpha-12.jar
[ERROR] urls[24] =
file:/Users/cstamas/.m2/repository/org/apache/maven/shared/file-management/1.1/file-management-1.1.jar
[ERROR] urls[25] =
file:/Users/cstamas/.m2/repository/org/apache/maven/shared/maven-shared-io/1.1/maven-shared-io-1.1.jar
[ERROR] urls[26] =
file:/Users/cstamas/.m2/repository/org/apache/maven/shared/maven-filtering/1.0-beta-2/maven-filtering-1.0-beta-2.jar
[ERROR] urls[27] =
file:/Users/cstamas/.m2/repository/org/codehaus/plexus/plexus-active-collections/1.0-beta-2/plexus-active-collections-1.0-beta-2.jar
[ERROR] urls[28] =
file:/Users/cstamas/.m2/repository/org/codehaus/plexus/plexus-io/1.0-alpha-4/plexus-io-1.0-alpha-4.jar
[ERROR] urls[29] =
file:/Users/cstamas/.m2/repository/org/apache/maven/maven-archiver/2.4/maven-archiver-2.4.jar
[ERROR] urls[30] =
file:/Users/cstamas/.m2/repository/junit/junit/3.8.1/junit-3.8.1.jar
[ERROR] urls[31] =
file:/Users/cstamas/.m2/repository/org/apache/maven/shared/maven-repository-builder/1.0-alpha-2/maven-repository-builder-1.0-alpha-2.jar
[ERROR] urls[32] =
file:/Users/cstamas/.m2/repository/org/apache/maven/scm/maven-scm-api/1.4/maven-scm-api-1.4.jar
[ERROR] urls[33] =
file:/Users/cstamas/.m2/repository/org/apache/maven/scm/maven-scm-manager-plexus/1.4/maven-scm-manager-plexus-1.4.jar
[ERROR] urls[34] =
file:/Users/cstamas/.m2/repository/org/apache/maven/scm/maven-scm-provider-svnexe/1.4/maven-scm-provider-svnexe-1.4.jar
[ERROR] urls[35] =
file:/Users/cstamas/.m2/repository/regexp/regexp/1.3/regexp-1.3.jar
[ERROR] urls[36] =
file:/Users/cstamas/.m2/repository/org/apache/maven/scm/maven-scm-provider-svn-commons/1.4/maven-scm-provider-svn-commons-1.4.jar
[ERROR] urls[37] =
file:/Users/cstamas/.m2/repository/org/apache/maven/scm/maven-scm-provider-gitexe/1.4/maven-scm-provider-gitexe-1.4.jar
[ERROR] urls[38] =
file:/Users/cstamas/.m2/repository/org/apache/maven/scm/maven-scm-provider-git-commons/1.4/maven-scm-provider-git-commons-1.4.jar
[ERROR] urls[39] =
file:/Users/cstamas/.m2/repository/org/apache/maven/scm/maven-scm-provider-hg/1.4/maven-scm-provider-hg-1.4.jar
[ERROR] urls[40] =
file:/Users/cstamas/.m2/repository/org/sonatype/plexus/plexus-build-api/0.0.7/plexus-build-api-0.0.7.jar
[ERROR] Number of foreign imports: 1
[ERROR] import: Entry[import  from realm
ClassRealm[project>org.sonatype.nexus:nexus-it-helper-plugin:2.7.0-SNAPSHOT,
parent: ClassRealm[maven.api, parent: null]]]


So, it seems that plugin realm did load Aether after all.... complete
Aether is present in plugin realm.


On Wed, Sep 11, 2013 at 11:57 AM, Tamás Cservenák <tamas@xxxxxxxxxxxxx
<mailto:tamas@xxxxxxxxxxxxx>> wrote:

    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~




_______________________________________________
aether-users mailing list
aether-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/aether-users



Back to the top