On 27/02/2011, at 10:53 AM, Peter Niederwieser wrote: > > Jared D. Cottrell wrote: >> >> As best I can tell, IDEA modules get there names from the name of the .iml >> file that defines them. >> > > This is also my understanding. > > > Jared D. Cottrell wrote: >> >> Whatever generates IDEA module dependencies is not sensitive to changes to >> the outputFile property even though some changes may result in module name >> changes >> > > I consider this a bug. Please submit an issue for it. The IdeaProject task > gets this right. > > > Jared D. Cottrell wrote: >> >> Anyone know of a solution? >> > > Currently I can see two workarounds: > > 1. Make the Gradle project names unique (this can be done without changing > the names of the project directories) > > 2. Post-process the module dependencies with the ideaModule.withXml() hook > (the user guide has more information on this) > > Other improvements we could make: > > - Add an IdeaModule.moduleName property to make it unnecessary to fiddle > with the outputFile property for changing the module name > - Base default module name on the Gradle project path rather than on its > name > > What do you think?
I think we should do both these things. The Eclipse plugin has the same problem, so we should use the project path to generate the default Eclipse project names, as well. Not sure if this was implicit in your suggestions above, but we should also map the identifiers used in Eclipse project dependencies and IDEA module dependencies, so that they always point to the correct Eclipse project/IDEA module regardless of whether the Gradle project hierarchy has duplicate project names, or the Eclipse project/IDEA module names have been customised. -- Adam Murdoch Gradle Developer http://www.gradle.org CTO, Gradleware Inc. - Gradle Training, Support, Consulting http://www.gradleware.com
