On 16/01/2013, at 5:06 PM, Adam Murdoch wrote: > Hi, > > To better support building Android apps (and other things), we want to rework > the jvm language plugins so that they can handle building multiple outputs > from a given set of source files. > > I've made a bit of a start on a spec here, but's pretty rough: > https://github.com/gradle/gradle/blob/master/design-docs/building-multiple-outputs-from-jvm-languages.md > > I need some suggestions for terminology: > > 1. A term for the things that Gradle builds. With this work, plus > publications, components, reports and distributions work that is happening, > we're starting to model more of the things that Gradle can build. It feels > like we should have a term for this. So far we've been calling these things > 'things' and sometimes 'outputs'. I kind of like the term 'build item' from > abuild.
I'm going to stick with 'build item' for now, as a working name for this concept, until something better comes along. > > 2. A term for a thing that runs on a JVM. This is the focus of the spec > above. The spec calls these things a 'packaging', but this doesn't really > work that well. Note that this isn't the logical thing - we're calling them > 'components' - but the physical thing. Initially, there are 2 types of this > thing - a class directory packaging and a JAR packaging. If we come up with a > good term for 'things' in #1 above, we could just shove 'jvm' in front of it > as a name for these things (e.g. 'jvm build item'). I've gone with 'jvm binary' for now, as an analogue to 'native binary'. Still doesn't feel quite right, but better than 'packaging', as a specific term. -- Adam Murdoch Gradle Co-founder http://www.gradle.org VP of Engineering, Gradleware Inc. - Gradle Training, Support, Consulting http://www.gradleware.com
