On 2024-03-11, lewis john mcgibbney wrote:

> I am working on upgrading Ivy to latest over in the Apache Nutch project.
> The build works just fine with 2.5.0 and 2.5.1 but with 2.5.2 the CI
> fails with the following complaint

> /home/runner/work/nutch/nutch/src/plugin/build-plugin.xml:234:
> impossible to ivy retrieve: java.lang.RuntimeException: problem during
> retrieve of org.apache.nutch#lib-htmlunit: java.lang.RuntimeException:
> Multiple artifacts of the module
> io.netty#netty-transport-native-kqueue;4.1.84.Final are retrieved to
> the same file! Update the retrieve pattern to fix this error.

Ivy 2.5.2 fixes a bug[1] when dealing with dependencies that have
multiple Maven artifacts with different Maven classifiers. Prior to
2.5.2 Ivy would think they'd all be the same and just pick one.

io.netty#netty-transport-native-kqueue has several artifacts, at least
this is what the repo looks like. I completely fail to understand the
POM :-)

Your pattern probably needs a [classifier] to make sure two artifacts
that differ by Maven classifier also target different file names.

Something like

pattern="${local-maven2-dir}/[organisation]/[module]/[revision]/[module]-[revision](-[classifier]).[ext]"

Stefan

[1] https://issues.apache.org/jira/browse/IVY-1642

Reply via email to