Yes, this is insane. The problem here is that solrj is treated as a
bin of dependencies further downstream in consuming projects. It
should not be this way, really. It should be a minimal set of
dependencies.

> Get rid of unneeded deps
> Explicitly exclude deps from gradle build that we know we do not need

I don't think it would require exclusions if the dependencies are
declared the right way. Right now gradle reflects what ant does (I
don't think it's correct, it's just consistent with ant; see
https://issues.apache.org/jira/browse/LUCENE-9140):

> Look into shading select libs that often cause collisions

This is possible but *hard* to manage in practice. I know because we
do such things in a few internal projects. It's really a nightmare to
manage builds and make external tools (like IDEs) work consistently
with such shaded dependencies. I think it'd be better to have a sane
set of dependencies and a separate project which would repackage
(shade) what's needed, if it's really a problem.

D.

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to