We have a multi-project build that uses Gradle (most of our builds are using Gradle). Some modules happen to reference other module’s private configurations, and this did not cause any problems - in fact we did not actually notice it, until a project that uses Apache Ivy attempted to reference those modules and got a resolution failure (e.g. ‘configuration not public in org.foo#bar;1.0.0’).
So now we are trying to modify all these projects to reference just the public configurations - for example if a project is referencing other project’s ‘providedCompile’ configuration, which is private, we are changing it to ‘providedRuntime’ (these are custom provided configuration we’ve introduced).
But in general, I think it would be good if Gradle detects and reports such cases since otherwise it will be impossible for anyone using Apache Ivy to resolve those modules - and I guess there is an overall thinking that ivy metadata produced by Gradle can be consumed with Apache Ivy.