Together with the growing number of choices for build tools and frameworks, there are also many ways in which modules can be stored within a repository.
Initially, the system supported the Maven layout conventions for dealing with modules (and relying on Maven-specific metadata). However, your build tool should be able to "talk" to the repository "naturally", so if you are using Ivy or Gradle, there is no need to configure them to use the Maven conventions in order to "fit in". Moreover, combining and chaining repositories that use different layouts should work out of the box.
This is where the Repository Layouts add-on comes into play.