
- Java Tutorial
- Java - Home
- Java - Overview
- Java - Environment Setup
- Java - Basic Syntax
- Java - Object & Classes
- Java - Constructors
- Java - Basic Datatypes
- Java - Variable Types
- Java - Modifier Types
- Java - Basic Operators
- Java - Loop Control
- Java - Decision Making
- Java - Numbers
- Java - Characters
- Java - Strings
- Java - Arrays
- Java - Date & Time
- Java - Regular Expressions
- Java - Methods
- Java - Files and I/O
- Java - Exceptions
- Java - Inner classes
- Java Object Oriented
- Java - Inheritance
- Java - Overriding
- Java - Polymorphism
- Java - Abstraction
- Java - Encapsulation
- Java - Interfaces
- Java - Packages
- Java Advanced
- Java - Data Structures
- Java - Collections
- Java - Generics
- Java - Serialization
- Java - Networking
- Java - Sending Email
- Java - Multithreading
- Java - Applet Basics
- Java - Documentation
- Java Useful Resources
- Java - Questions and Answers
- Java - Quick Guide
- Java - Useful Resources
- Java - Discussion
- Java - Examples
How can we display all modules with classloaders in Java 9?
Before Java 9, the extension and the application class loader are an instance of the java.net.URLClassLoader class. In Java 9, the classification of class loaders has changed, instead of an external class loader, we have the Platform class loader. The purpose of using Platform class loader is that classes loaded by the bootstrap class loader have all permissions by default.
In the below example, we can display all modules with classloaders.
Example
import static java.util.Objects.isNull; public class Java9ClassLoaderTest { public static void main(String args[]) { ModuleLayer layer = ModuleLayer.boot(); layer.modules().forEach(module -> { ClassLoader classLoader = module.getClassLoader(); String classLoaderName = isNull(classLoader) ? "bootstrap" : classLoader.getName(); System.out.println(classLoaderName + ": " + module.getName()); }); } }
Output
app: jdk.internal.ed platform: jdk.scripting.nashorn platform: java.compiler platform: java.security.jgss platform: jdk.plugin.dom bootstrap: jdk.net bootstrap: java.management app: jdk.jdeps platform: javafx.base app: jdk.editpad bootstrap: java.security.sasl platform: java.sql.rowset bootstrap: java.datatransfer app: jdk.compiler platform: java.scripting platform: jdk.naming.dns platform: jdk.crypto.mscapi bootstrap: java.xml platform: jdk.localedata platform: javafx.swing bootstrap: jdk.unsupported platform: jdk.plugin bootstrap: jdk.snmp bootstrap: jdk.naming.rmi app: jdk.internal.le platform: javafx.web platform: jdk.dynalink platform: jdk.accessibility bootstrap: java.rmi platform: jdk.jsobject platform: java.sql app: jdk.attach bootstrap: jdk.management.cmm platform: jdk.security.auth platform: java.xml.crypto bootstrap: jdk.jfr bootstrap: jdk.management.jfr platform: jdk.security.jgss app: jdk.packager.services bootstrap: java.base app: jdk.internal.opt bootstrap: java.prefs bootstrap: java.management.rmi platform: jdk.zipfs platform: java.jnlp app: jdk.packager platform: oracle.net app: jdk.jlink bootstrap: jdk.management.agent bootstrap: java.logging app: jdk.jdi app: jdk.jstatd platform: java.se app: jdk.javadoc platform: jdk.charsets platform: java.smartcardio app: jdk.jconsole bootstrap: jdk.sctp platform: javafx.graphics bootstrap: jdk.management.resource app: jdk.jdwp.agent app: jdk.internal.jvmstat platform: javafx.controls platform: jdk.crypto.cryptoki platform: javafx.media bootstrap: jdk.httpserver platform: oracle.desktop bootstrap: java.naming app: jdk.jshell app: jdk.jartool platform: jdk.deploy bootstrap: java.desktop platform: javafx.fxml bootstrap: java.instrument platform: jdk.crypto.ec bootstrap: jdk.management platform: jdk.xml.dom platform: jdk.javaws
- Related Articles
- How can we display all module names in Java 9?
- How we can import Python modules in Jython?
- How we can bundle multiple python modules?
- How can we use a diamond operator with anonymous classes in Java 9?
- What are automatic modules in Java 9?
- How we can import Python modules without installing?
- How can we create an unmodifiable Set in Java 9?
- How can we create an unmodifiable List in Java 9?
- How can we implement the SubmissionPublisher class in Java 9?
- How can we implement the Subscriber interface in Java 9?
- How can we modify an existing module in Java 9?
- How to display all stack frames of the current thread in Java 9?
- How can we implement a map in JShell in Java 9?
- How can we avoid compilation errors in JShell in Java 9?
- Can we display a JTabPane with TextArea in one of the tabs with Java

Advertisements