[GRADLE-3499] Cannot create a native component which name contains dots Created: 08/Jul/16  Updated: 08/Jul/16  Resolved: 08/Jul/16

Status: Resolved
Project: Gradle
Affects Version/s: 2.14, 2.14.1-rc-1
Fix Version/s: 2.14.1-rc-2

Type: Bug
Reporter: Cédric Champeau (Inactive) Assignee: Cédric Champeau (Inactive)
Resolution: Fixed Votes: 0


 Description   

2.14 introduced a bug that makes impossible to create a component which name contains dots:

plugins {
  id 'c'
}
components {
  'foo.bar'(NativeLibrarySpec)
}

Then running `./gradlew components` fails with:

Caused by: java.lang.IllegalArgumentException: Element registration has a path (components.foo.bar.binaries) which is not a child of this node (components.foo.bar).
	at org.gradle.model.internal.registry.ModelElementNode.addNode(ModelElementNode.java:222)
	at org.gradle.model.internal.registry.ModelElementNode.addLink(ModelElementNode.java:216)
	at org.gradle.model.internal.core.ModelMaps.addModelMapNode(ModelMaps.java:33)
	at org.gradle.platform.base.component.BaseComponentSpec.<init>(BaseComponentSpec.java:42)
	at org.gradle.nativeplatform.internal.AbstractNativeComponentSpec.<init>(AbstractNativeComponentSpec.java:28)
	at org.gradle.nativeplatform.internal.AbstractTargetedNativeComponentSpec.<init>(AbstractTargetedNativeComponentSpec.java:28)
	at org.gradle.nativeplatform.internal.DefaultNativeLibrarySpec.<init>(DefaultNativeLibrarySpec.java:22)
	at org.gradle.internal.reflect.DirectInstantiator.newInstance(DirectInstantiator.java:42)
	at org.gradle.platform.base.component.internal.DefaultComponentSpec.create(DefaultComponentSpec.java:33)
	... 63 more

Generated at Wed Jun 30 12:50:23 CDT 2021 using Jira 8.4.2#804003-sha1:d21414fc212e3af190e92c2d2ac41299b89402cf.