PluginClasspathGradleBuild Class — spring-boot Architecture
Architecture documentation for the PluginClasspathGradleBuild class in PluginClasspathGradleBuild.java from the spring-boot codebase.
Entity Profile
Relationship Graph
Source Code
build-plugin/spring-boot-gradle-plugin/src/test/java/org/springframework/boot/gradle/testkit/PluginClasspathGradleBuild.java lines 56–144
public class PluginClasspathGradleBuild extends GradleBuild {
private boolean kotlin;
public PluginClasspathGradleBuild(BuildOutput buildOutput) {
super(buildOutput);
}
public PluginClasspathGradleBuild(BuildOutput buildOutput, Dsl dsl) {
super(buildOutput, dsl);
}
public PluginClasspathGradleBuild kotlin() {
this.kotlin = true;
return this;
}
@Override
public GradleRunner prepareRunner(String... arguments) throws IOException {
return super.prepareRunner(arguments).withPluginClasspath(pluginClasspath());
}
private List<File> pluginClasspath() {
List<File> classpath = new ArrayList<>();
classpath.add(new File("bin/main"));
classpath.add(new File("build/classes/java/main"));
classpath.add(new File("build/resources/main"));
classpath.add(new File(pathOfJarContaining(Layers.class)));
classpath.add(new File(pathOfJarContaining(ClassVisitor.class)));
classpath.add(new File(pathOfJarContaining(DependencyManagementPlugin.class)));
if (this.kotlin) {
classpath.add(new File(pathOfJarContaining("org.jetbrains.kotlin.cli.common.PropertiesKt")));
classpath.add(new File(pathOfJarContaining(KotlinToolingVersion.class)));
classpath.add(new File(pathOfJarContaining("org.jetbrains.kotlin.build.report.metrics.BuildTime")));
classpath.add(new File(pathOfJarContaining("org.jetbrains.kotlin.buildtools.api.CompilationService")));
classpath.add(new File(pathOfJarContaining("org.jetbrains.kotlin.daemon.client.KotlinCompilerClient")));
classpath.add(new File(pathOfJarContaining("org.jetbrains.kotlin.konan.library.KonanLibrary")));
classpath.add(new File(pathOfJarContaining(KotlinCompilerPluginSupportPlugin.class)));
classpath.add(new File(pathOfJarContaining(LanguageSettings.class)));
classpath.add(new File(pathOfJarContaining(BuildUidService.class)));
}
classpath.add(new File(pathOfJarContaining("org.apache.commons.lang3.ArrayFill")));
classpath.add(new File(pathOfJarContaining("org.apache.commons.io.Charsets")));
classpath.add(new File(pathOfJarContaining(ArchiveEntry.class)));
classpath.add(new File(pathOfJarContaining(BuildRequest.class)));
classpath.add(new File(pathOfJarContaining(HttpClientConnectionManager.class)));
classpath.add(new File(pathOfJarContaining(HttpRequest.class)));
classpath.add(new File(pathOfJarContaining(HttpVersionPolicy.class)));
classpath.add(new File(pathOfJarContaining(JacksonModule.class)));
classpath.add(new File(pathOfJarContaining(JsonParser.class)));
classpath.add(new File(pathOfJarContaining("com.github.openjson.JSONObject")));
classpath.add(new File(pathOfJarContaining(JsonView.class)));
classpath.add(new File(pathOfJarContaining(Platform.class)));
classpath.add(new File(pathOfJarContaining(Toml.class)));
classpath.add(new File(pathOfJarContaining(Lexer.class)));
classpath.add(new File(pathOfJarContaining("org.graalvm.buildtools.gradle.NativeImagePlugin")));
classpath.add(new File(pathOfJarContaining("org.graalvm.reachability.GraalVMReachabilityMetadataRepository")));
classpath.add(new File(pathOfJarContaining("org.graalvm.buildtools.utils.SharedConstants")));
// Cyclonedx dependencies
classpath.add(new File(pathOfJarContaining(CyclonedxPlugin.class)));
classpath.add(new File(pathOfJarContaining("com.ctc.wstx.api.WriterConfig")));
classpath.add(new File(pathOfJarContaining("com.fasterxml.jackson.core.Versioned")));
classpath.add(new File(pathOfJarContaining("com.fasterxml.jackson.databind.JsonSerializer")));
classpath.add(new File(pathOfJarContaining("com.fasterxml.jackson.dataformat.xml.ser.ToXmlGenerator")));
classpath.add(new File(pathOfJarContaining("com.github.packageurl.MalformedPackageURLException")));
classpath.add(new File(pathOfJarContaining("com.google.common.collect.ImmutableMap")));
classpath.add(new File(pathOfJarContaining("com.networknt.schema.resource.SchemaMappers")));
classpath.add(new File(pathOfJarContaining("org.apache.commons.collections4.CollectionUtils")));
classpath.add(new File(pathOfJarContaining("org.apache.maven.model.building.ModelBuildingException")));
classpath.add(new File(pathOfJarContaining("org.codehaus.plexus.util.xml.pull.XmlPullParserException")));
classpath.add(new File(pathOfJarContaining("org.codehaus.stax2.ri.Stax2WriterAdapter")));
classpath.add(new File(pathOfJarContaining("org.cyclonedx.model.ExternalReference")));
return classpath;
}
private String pathOfJarContaining(String className) {
try {
return pathOfJarContaining(Class.forName(className));
}
catch (ClassNotFoundException ex) {
throw new IllegalArgumentException(ex);
}
}
private String pathOfJarContaining(Class<?> type) {
return type.getProtectionDomain().getCodeSource().getLocation().getPath();
}
}
Domain
Source
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free