The samples/customModel/languageType example is not working

In the gradle source (commit 66d8c684), one of the sample examples is not working (using gradle 2.10):

$ cd subprojects/docs/src/samples/customModel/languageType
$ gradle tasks
FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring root project 'languageType'.
> Exception thrown while executing model rule: ComponentBinaryRules#initializeBinarySourceSets > > beforeEach()
   > Exception thrown while executing model rule: docs(sample.documentation.DocumentationComponent) { ... } @ build.gradle line 26, column 9 > create(reference)
      > Factory registration for 'sample.documentation.TextSourceSet' is invalid because it doesn't extend an interface with a default implementation

Is this example supposed to work?

Also, I see no @Model or @Mutate annotation, so is this example one we should use for learning the new model dsl? What is this example trying to teach?


Hello Martin,

This sample, customModel/languageType, demonstrates how to write a custom language plugin using the incubating Gradle Software Model, taking Markdown documentation as an example. The plugin implementation is in the buildSrc directory, the root build.gradle then makes use of this plugin to build Markdown to HTML.

Commit 66d8c684 is not in 2.10, will be in 2.11, and the incubating model is a moving target. I suggest you to run the samples from the 2.10 source distribution or at the REL_2.10 tag.