[
https://jira.codehaus.org/browse/MDEP-98?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=280566#comment-280566
]
Stevo Slavic commented on MDEP-98:
----------------------------------
I've reproduced this using attached surefire test case. [1] is relevant build
log with error when running just {{mvn site}}.
With this command one runs {{site}} phase of {{site}} lifecycle to which by
default {{maven-site-plugin}} {{site} goal is bound to. Site plugin site goal
runs {{test}} phase of default lifecycle. {{package}} phase, to which assembly
of jar module zip archive with bin classifier is bound, will not be triggered
by this test phase execution, but {{process-resources}} in war module, to which
unpacking of that bin/zip is bound, will be triggered. IMO it's wrong that
dependency plugin manages to resolve jar module from reactor - it should try to
resolve one with bin classifier (and not main jar module), and in that case I'd
expect build to fail with missing dependency reported since jar module with bin
classifier creation has not been triggered and thus it's not attached to the
build.
It's strange to me also that if you run "mvn package" as one build, and then
"mvn site" as separate build that dependency plugin in "site" build will be
able to resolve jar module bin classifier artifact and unpack it even though
it's not installed on any repository nor is it in reactor of "site" build.
Looks like a bug too, again related to resolving dependencies.
[1] build log
{noformat}
[INFO] ------------------------------------------------------------------------
[INFO] Building MDEP-98 test case - WAR 1.0.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-site-plugin:3.0:site (default-site) @ mdep98-testcase-web ---
[INFO] configuring report plugin
org.apache.maven.plugins:maven-project-info-reports-plugin:2.4
[INFO] configuring report plugin
org.apache.maven.plugins:maven-surefire-report-plugin:2.10
[INFO]
[INFO] >>> maven-surefire-report-plugin:2.10:report-only (report:report-only) @
mdep98-testcase-web >>>
[INFO]
[INFO] <<< maven-surefire-report-plugin:2.10:report-only (report:report-only) @
mdep98-testcase-web <<<
[INFO]
[INFO] >>> maven-surefire-report-plugin:2.10:report (report:report) @
mdep98-testcase-web >>>
[INFO]
[INFO] --- maven-resources-plugin:2.4.3:resources (default-resources) @
mdep98-testcase-web ---
[WARNING] Using platform encoding (Cp1252 actually) to copy filtered resources,
i.e. build is platform dependent!
[INFO] Copying 0 resource
[INFO]
[INFO] --- maven-dependency-plugin:2.1:unpack (default) @ mdep98-testcase-web
---
[INFO] Configured Artifact: foo.bar:mdep98-testcase-jar:bin:1.0.0-SNAPSHOT:zip
[INFO] Unpacking
D:\temp\mdep89\mdep98-testcase-parent\mdep98-testcase-jar\target\classes to
D:\temp\mdep89\mdep98-testcase-parent\mdep98-testcase-web\target\mdep98-testcase-web-1.0.0-SNAPSHOT\webstart
with includes null and excludes:null
org.codehaus.plexus.archiver.ArchiverException: The source must not be a
directory.
at
org.codehaus.plexus.archiver.AbstractUnArchiver.validate(AbstractUnArchiver.java:174)
at
org.codehaus.plexus.archiver.AbstractUnArchiver.extract(AbstractUnArchiver.java:107)
at
org.apache.maven.plugin.dependency.AbstractDependencyMojo.unpack(AbstractDependencyMojo.java:260)
at
org.apache.maven.plugin.dependency.fromConfiguration.UnpackMojo.unpackArtifact(UnpackMojo.java:122)
at
org.apache.maven.plugin.dependency.fromConfiguration.UnpackMojo.execute(UnpackMojo.java:95)
at
org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
at
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
at
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at
org.apache.maven.lifecycle.internal.MojoExecutor.executeForkedExecutions(MojoExecutor.java:365)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeForkedExecutions(DefaultLifecycleExecutor.java:175
)
at
org.apache.maven.reporting.exec.DefaultMavenReportExecutor.buildReportPlugin(DefaultMavenReportExecutor.java:
282)
at
org.apache.maven.reporting.exec.DefaultMavenReportExecutor.buildMavenReports(DefaultMavenReportExecutor.java:
148)
at
org.apache.maven.plugins.site.AbstractSiteRenderingMojo.getReports(AbstractSiteRenderingMojo.java:240)
{noformat}
> The source must not be a directory
> ----------------------------------
>
> Key: MDEP-98
> URL: https://jira.codehaus.org/browse/MDEP-98
> Project: Maven 2.x Dependency Plugin
> Issue Type: Bug
> Components: unpack-dependencies
> Affects Versions: 2.0-alpha-4
> Environment: Windows XP Professional SP2
> Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_11-b03)
> Java HotSpot(TM) Client VM (build 1.5.0_11-b03, mixed mode, sharing)
> Reporter: Pablo Muñiz
> Assignee: Brian Fox
> Attachments: MDEP-98-ITs.patch,
> mdep98-testcase-parent-with-surefire.zip, mdep98-testcase-parent.zip
>
>
> Using maven-dependency-plugin in a multimodule project inside a module wich
> has a dependency with another module in the same project the next error
> ocurrs :
> org.codehaus.plexus.archiver.ArchiverException: The source must not be a
> directory.
> at
> org.codehaus.plexus.archiver.AbstractUnArchiver.validate(AbstractUnArchiver.java:98)
> at
> org.codehaus.plexus.archiver.AbstractUnArchiver.extract(AbstractUnArchiver.java:84)
> at
> org.apache.maven.plugin.dependency.AbstractDependencyMojo.unpack(AbstractDependencyMojo.java:232)
> at
> org.apache.maven.plugin.dependency.UnpackDependenciesMojo.execute(UnpackDependenciesMojo.java:72)
> at
> org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:443)
> at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539)
> at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:480)
> at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:459)
> at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:311)
> at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:278)
> at
> org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143)
> at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:334)
> at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:125)
> at org.apache.maven.cli.MavenCli.main(MavenCli.java:272)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:585)
> at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
> at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
> at
> org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
> at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
> [INFO]
> ------------------------------------------------------------------------
> [ERROR] BUILD ERROR
> [INFO]
> ------------------------------------------------------------------------
> [INFO] Error unpacking file:
> c:\D\desarrollo\proyectos\plataforma\platform-core\target\classes to:
> c:\D\desarrollo\proyectos\plataforma\platform-bundle\platform-bundle-jar\target\classes
> org.codehaus.plexus.archiver.ArchiverException: The source must not be a
> directory.
> Project structure is as follows:
> plataforma
> - platform-core
> - platform-bundle
> - platform-bundle-jar
> - platform-bundle-src
> and the error happens on executing any goal from parent pom.
> maven-dependency-plugin seems to receive a reference to target/classes
> directory for platform-core dependency instead of the URL to my local
> repository where platform-core is located.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira