name.remal.classes-relocation
Plugin class: name.remal.gradle_plugins.plugins.classes_relocation.ClassesRelocationPlugin
plugins {
id 'name.remal.classes-relocation' version '1.5.0'
}
plugins {
id("name.remal.classes-relocation") version "1.5.0"
}
The plugin applies these plugins:
This plugin processes compilation result of all tasks of type AbstractCompile
for main
source-set. It relocates dependency classes by copying them to the compiled classes directory adding prefix (from ClassesRelocationExtension.relocatedClassesPackageName
) to relocated class names.
The functionality can be configured using created classesRelocation
extension of type ClassesRelocationExtension
.
relocateClasses
configuration¶
Classes from dependencies defined in relocateClasses
configuration will be relocated. All other dependencies of compileClasspath
and runtimeClasspath
will be excluded from relocation process.
If you want to exclude dependencies from relocation, add them to excludeFromClassesRelocation
configuration.
compileOnly
configuration extends relocateClasses
.
RelocateClasses
and RelocatePackages
annotations¶
Classes set via name.remal.gradle_plugins.api.RelocateClasses
and classes inside packages set via name.remal.gradle_plugins.api.RelocatePackages
will be relocated for the class annotated with these annotations. Only dependencies from excludeFromForcedClassesRelocation
configuration will be excluded.
These annotations are accessible using name.remal:gradle-plugins-api:1.5.0
Maven compile-only dependency.
name.remal.gradle_plugins.plugins.classes_relocation.ClassesRelocationExtension
¶
Property | Type | Description |
---|---|---|
relocatedClassesPackageName |
String |
Base package name for relocated classes. Default value: <project group>.<project name>.internal._relocated . |