@CacheableTransformer class GroovyExtensionModuleTransformer extends java.lang.Object implements Transformer
Modified from eu.appsatori.gradle.fatjar.tasks.PrepareFiles.groovy
Resource transformer that merges Groovy extension module descriptor files into a single file. Groovy extension module descriptor files have the name org.codehaus.groovy.runtime.ExtensionModule and live in the META-INF/services (Groovy up to 2.4) or META-INF/groovy (Groovy 2.5+) directory. See https://issues.apache.org/jira/browse/GROOVY-8480 for more details of the change. If there are several descriptor files spread across many JARs the individual entries will be merged into a single descriptor file which will be packaged into the resultant JAR produced by the shadowing process. It will live in the legacy directory (META-INF/services) if all of the processed descriptor files came from the legacy location, otherwise it will be written into the now standard location (META-INF/groovy). Note that certain JDK9+ tooling will break when using the legacy location.
Constructor and description |
---|
GroovyExtensionModuleTransformer
() |
Type Params | Return Type | Name and description |
---|---|---|
|
boolean |
canTransformResource(org.gradle.api.file.FileTreeElement element) |
|
boolean |
hasTransformedResource() |
|
void |
modifyOutputStream(org.apache.tools.zip.ZipOutputStream os, boolean preserveFileTimestamps) |
|
void |
transform(TransformerContext context) |
Methods inherited from class | Name |
---|---|
class java.lang.Object |
java.lang.Object#wait(long), java.lang.Object#wait(long, int), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll() |