Property expansion fails


(Nikita Salnikov-Tarnovski) #1

I have the following problem with Gradle 1.9:

Caused by: groovy.lang.GroovyRuntimeException: Failed to parse template script (your template may contain an error or be trying to use expressions not currently supported): startup failed: SimpleTemplateScript46.groovy: 25: unexpected char: ‘’ @ line 25, column 38.

<Arg>./servlet-api-[^/].jar$</Arg>

^

1 error

at org.gradle.api.internal.file.copy.FilterChain$3.transform(FilterChain.java:90)

at org.gradle.api.internal.file.copy.FilterChain$3.transform(FilterChain.java:84)

at org.gradle.api.internal.ChainingTransformer.transform(ChainingTransformer.java:37)

at org.gradle.api.internal.file.copy.FilterChain.transform(FilterChain.java:39)

at org.gradle.api.internal.file.copy.FilterChain.transform(FilterChain.java:46)

at org.gradle.api.internal.file.copy.DefaultFileCopyDetails.open(DefaultFileCopyDetails.java:88)

at org.gradle.api.internal.file.AbstractFileTreeElement.copyTo(AbstractFileTreeElement.java:47)

at org.gradle.api.internal.file.copy.DefaultFileCopyDetails.copyTo(DefaultFileCopyDetails.java:96)

at org.gradle.api.internal.file.AbstractFileTreeElement.copyFile(AbstractFileTreeElement.java:88)

at org.gradle.api.internal.file.AbstractFileTreeElement.copyTo(AbstractFileTreeElement.java:65)

… 107 more

while executing this code:

copy {
    from "$buildDir/tmp/jetty"
    into "$projectDir/jetty"
    filesMatching("**/*.xml") {
      expand([jdbcUrl: 'jdbc:mysql://localhost/'])
    }
  }

(Benjamin Muschko) #2

The expand method tries to replace all occurrences of $property or ${property}. I think what is happening here is that it finds “$<” but can’t replace it. It’s probably going to work if you’d remove the dollar sign.