maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Benjamin Bentmann (JIRA)" <j...@codehaus.org>
Subject [jira] Created: (MNG-5019) [regression] String-based component lookups performed by report mojos fail with ClassCastException
Date Mon, 21 Feb 2011 23:02:22 GMT
[regression] String-based component lookups performed by report mojos fail with ClassCastException
--------------------------------------------------------------------------------------------------

                 Key: MNG-5019
                 URL: http://jira.codehaus.org/browse/MNG-5019
             Project: Maven 2 & 3
          Issue Type: Bug
          Components: Class Loading
    Affects Versions: 3.0.2
            Reporter: Benjamin Bentmann


>From the IT MSITE-506 of the Site Plugin:
{noformat}
Caused by: java.lang.ClassCastException: org.codehaus.plexus.archiver.zip.ZipUnArchiver$__plexus6
  at org.codehaus.plexus.archiver.manager.DefaultArchiverManager.getUnArchiver(DefaultArchiverManager.java:76)
  at org.apache.maven.plugin.javadoc.resolver.ResourceResolver.resolveAndUnpack(ResourceResolver.java:357)
  at org.apache.maven.plugin.javadoc.resolver.ResourceResolver.resolveFromArtifacts(ResourceResolver.java:302)
  at org.apache.maven.plugin.javadoc.resolver.ResourceResolver.resolveDependencySourcePaths(ResourceResolver.java:143)
  at org.apache.maven.plugin.javadoc.AbstractJavadocMojo.getDependencySourcePaths(AbstractJavadocMojo.java:2169)
  at org.apache.maven.plugin.javadoc.AbstractJavadocMojo.getSourcePaths(AbstractJavadocMojo.java:2058)
  at org.apache.maven.plugin.javadoc.JavadocReport.canGenerateReport(JavadocReport.java:213)
  at org.apache.maven.plugins.site.DefaultMavenReportExecutor.canGenerateReport(DefaultMavenReportExecutor.java:299)
  at org.apache.maven.plugins.site.DefaultMavenReportExecutor.buildMavenReports(DefaultMavenReportExecutor.java:278)

{noformat}

Cause is the following container scenario:
{noformat}
  maven-realm
    site-plugin-realm        <-- plexus lookup realm
      javadoc-plugin-realm   <-- TCCL
{noformat}
where both the Site Plugin and the Javadoc Plugin depend on plexus-archiver.

The way the container resolves string-based roles is to first check the lookup realm, then
the TCCL for the interface/component. In the setup above, this ends up using components from
the Site Plugin for the execution of the Javadoc Plugin, boom.

After talking with Stuart, the fix seems to be as simple as just nullifying the lookup realm,
thereby consequently using the TCCL for the lookups.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message