Home / Class/ JarTypeFilter Class — spring-boot Architecture

JarTypeFilter Class — spring-boot Architecture

Architecture documentation for the JarTypeFilter class in JarTypeFilter.java from the spring-boot codebase.

Entity Profile

Source Code

build-plugin/spring-boot-maven-plugin/src/main/java/org/springframework/boot/maven/JarTypeFilter.java lines 35–61

class JarTypeFilter extends DependencyFilter {

	private static final Set<String> EXCLUDED_JAR_TYPES = Collections.unmodifiableSet(
			new HashSet<>(Arrays.asList("annotation-processor", "dependencies-starter", "development-tool")));

	JarTypeFilter() {
		super(Collections.emptyList());
	}

	@Override
	protected boolean filter(Artifact artifact) {
		try (JarFile jarFile = new JarFile(artifact.getFile())) {
			Manifest manifest = jarFile.getManifest();
			if (manifest != null) {
				String jarType = manifest.getMainAttributes().getValue("Spring-Boot-Jar-Type");
				if (jarType != null && EXCLUDED_JAR_TYPES.contains(jarType)) {
					return true;
				}
			}
		}
		catch (IOException ex) {
			// Continue
		}
		return false;
	}

}

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free