On Sep 2, 2008, at 11:09 AM, Hans Dockter wrote:
What is the definition of the root directory in the arbitrary
layout world? Is it the project directory of the root project? Is
it the directory containing the settings.gradle? Is it just
somewhere where we start looking for well-named things in order to
detect the layout? Do we even need it?
Good point. I have been pondering about this for quite a while. I
see four purposes for what we currently call root project:
1.) The place where we have found the gradle.settings file.
2.) The dir of the gradle.settings file constitutes a config dir.
Its location should be known to all projects as it might contain
common stuff like lib folders, etc ....
3.) Contains code for configuring common things in the projects.
4.) Code for defining tasks that do something with the results of
the subprojects.
Looking at the list above, do we need a project to model this? If
it were only for 1-3, it might make sense not to use a project for
this. But with 4.) in mind I think always having a root project
makes sense, for any kind of layout.
To say it in other words. I think it makes sense that Gradle maps any
kind of physical layout to a virtual hierarchical layout with a root
project. In the case of a physical flat layout the master project is
the root project and the other projects are its children.
- Hans
--
Hans Dockter
Gradle Project lead
http://www.gradle.org
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email