After an issue refreshed my need for build hierarchy control, I'm back to
trying to build my multi-project without a physical top-level build. Again,
to clean up cvs (among other benefits), I would like to modify my project
structure
From:
-D Project
-D SubProject1
-F build.gradle
-D SubProject2
-F build.gradle
-F build.gradle
-F settings.gradle
to:
-D Project
-D SubProject1
-F build.gradle
-D SubProject2
-F build.gradle
-D ProjectBuild
-F build.gradle (this is virtually the top-level script which defines
a lot of behavior for subprojects)
-F settings.gradle
Without affecting the build, which has been running well. If someone knows
exactly how to do this then read no further, but here is a list of my
settings.gradle attempts and which problems they caused:
Attempt #1:
include 'Project1', 'Project2'
mavenRepo(name: 'LocalRepo', urls: 'http://localserv/maven-repo/')
dependencies("org.jerod.GradlePlugins:MyRootPlugin:1.7")
dependencies("org.jerod.GradlePlugins:MyProjectPlugin:1.7")
Output #1:
plugins found, projects initialized but no directories/build files found so
its an empty but error-free build
Attempt #2:
includeFlat 'Project1', 'Project2'
mavenRepo(name: 'LocalRepo', urls: 'http://localserv/maven-repo/')
dependencies("org.jerod.GradlePlugins:MyRootPlugin:1.7")
dependencies("org.jerod.GradlePlugins:MyProjectPlugin:1.7")
Output #2:
plugins found, projects initialized, errors because other projects reference
rootproject paths which are now different
Attempt #3[#4]:
rootProject.projectDir = new File(settingsDir, '..')
include[includeFlat] 'Project1', 'Project2'
mavenRepo(name: 'LocalRepo', urls: 'http://localserv/maven-repo/')
dependencies("org.jerod.GradlePlugins:MyRootPlugin:1.7")
dependencies("org.jerod.GradlePlugins:MyProjectPlugin:1.7")
Output #3[#4]:
Plugin not found, no class def found on org.jerod.GradlePlugins.MyRootPlugin
declaration, projects not added
When I run configuration 3/4 while specifying the settings file (-c
settings.gradle) I get an error that it can't select the default project
Attempt #5:
rootProject.projectDir = new File(settingsDir, '..')
include 'Project1', 'Project2', 'ProjectBuild'
mavenRepo(name: 'LocalRepo', urls: 'http://localserv/maven-repo/')
dependencies("org.jerod.GradlePlugins:MyRootPlugin:1.7")
dependencies("org.jerod.GradlePlugins:MyProjectPlugin:1.7")
Output #5:
Plugins found, includes all proojects, appears to find all build files, but
doesn't run any tasks for subprojects (no errors, though). Is it possible
that with ProjectBuild added as a separate project and being halfway between
a root and subproject, the real subprojects are no longer downstream from
ProjectBuild so dependsOnChildren() doesn't have the same effect?
Attempt #6:
rootProject.projectDir = new File(settingsDir, '..')
rootProject.buildFileName = 'loggerBuild/build.gradle'
include 'Project1', 'Project2', 'ProjectBuild'
mavenRepo(name: 'LocalRepo', urls: 'http://localserv/maven-repo/')
dependencies("org.jerod.GradlePlugins:MyRootPlugin:1.7")
dependencies("org.jerod.GradlePlugins:MyProjectPlugin:1.7")
Output #6:
Plugins found, projects recognized, but errors when ProjectBuild is seen as
the root project and a subproject and thus gets two different task
definitions thanks to the two declared plugins
If you made it this far, I applaud you. I'm desperate for any help.
Thank you,
Jerod Lass
--
View this message in context:
http://www.nabble.com/Arbitrary-multi-project-builds-progress-tp24206327p24206327.html
Sent from the gradle-user mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email