In Java, you can use System.getProperties()
to get all the system properties.
Properties properties = System.getProperties();
properties.forEach((k, v) -> System.out.println(k + ":" + v)); // Java 8
1. Example
DisplayApp.java
package com.favtuts.display; import java.util.Map; import java.util.Properties; public class DisplayApp { public static void main(String[] args) { Properties properties = System.getProperties(); // Java 8 properties.forEach((k, v) -> System.out.println(k + ":" + v)); // Classic way to loop a map // for (Map.Entry<Object, Object> entry : properties.entrySet()) { // System.out.println(entry.getKey() + " : " + entry.getValue()); // } // No good, output is truncated, long lines end with ... // properties.list(System.out); } }
Output
sun.desktop:gnome
awt.toolkit:sun.awt.X11.XToolkit
java.specification.version:11
sun.cpu.isalist:
sun.jnu.encoding:UTF-8
java.class.path:/home/tvt/favtuts/java-core-tutorials-examples/java-misc/target/classes;
java.vm.vendor:Private Build
sun.arch.data.model:64
java.vendor.url:Unknown
user.timezone:
os.name:Linux
java.vm.specification.version:11
sun.java.launcher:SUN_STANDARD
user.country:US
sun.boot.library.path:/usr/lib/jvm/java-11-openjdk-amd64/lib
sun.java.command:com.favtuts.display.DisplayApp
jdk.debug:release
sun.cpu.endian:little
user.home:/home/tvt
user.language:en
java.specification.vendor:Oracle Corporation
java.version.date:2022-04-19
java.home:/usr/lib/jvm/java-11-openjdk-amd64
file.separator:/
java.vm.compressedOopsMode:Zero based
line.separator:
java.specification.name:Java Platform API Specification
java.vm.specification.vendor:Oracle Corporation
java.awt.graphicsenv:sun.awt.X11GraphicsEnvironment
sun.management.compiler:HotSpot 64-Bit Tiered Compilers
java.runtime.version:11.0.15+10-Ubuntu-0ubuntu0.20.04.1
user.name:tvt
path.separator::
os.version:5.13.0-40-generic
java.runtime.name:OpenJDK Runtime Environment
file.encoding:UTF-8
java.vm.name:OpenJDK 64-Bit Server VM
java.vendor.url.bug:Unknown
java.io.tmpdir:/tmp
java.version:11.0.15
user.dir:/home/tvt/favtuts/java-core-tutorials-examples
os.arch:amd64
java.vm.specification.name:Java Virtual Machine Specification
java.awt.printerjob:sun.print.PSPrinterJob
sun.os.patch.level:unknown
java.library.path:/usr/java/packages/lib:/usr/lib/x86_64-linux-gnu/jni:/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu:/usr/lib/jni:/lib:/usr/lib
java.vm.info:mixed mode, sharing
java.vendor:Private Build
java.vm.version:11.0.15+10-Ubuntu-0ubuntu0.20.04.1
sun.io.unicode.encoding:UnicodeLittle
java.class.version:55.0
2. Sorting
Example to display all the system properties in Alphabetical order.
DisplayApp.java
package com.favtuts.display; import java.util.LinkedHashMap; import java.util.Map; import java.util.Properties; import java.util.stream.Collectors; public class DisplayApp { public static void main(String[] args) { Properties properties = System.getProperties(); // Thanks Java 8 LinkedHashMap<String, String> collect = properties.entrySet().stream() .collect(Collectors.toMap(k -> (String) k.getKey(), e -> (String) e.getValue())) .entrySet().stream().sorted(Map.Entry.comparingByKey()) .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue, (oldValue, newValue) -> oldValue, LinkedHashMap::new)); collect.forEach((k, v) -> System.out.println(k + ":" + v)); } }
Output
awt.toolkit:sun.awt.X11.XToolkit
file.encoding:UTF-8
file.separator:/
java.awt.graphicsenv:sun.awt.X11GraphicsEnvironment
java.awt.printerjob:sun.print.PSPrinterJob
java.class.path:/home/tvt/favtuts/java-core-tutorials-examples/java-misc/target/classes
java.class.version:55.0
java.home:/usr/lib/jvm/java-11-openjdk-amd64
java.io.tmpdir:/tmp
java.library.path:/usr/java/packages/lib:/usr/lib/x86_64-linux-gnu/jni:/lib/x86_64-linux-gnu:/usr/lib/x86_64-linux-gnu:/usr/lib/jni:/lib:/usr/lib
java.runtime.name:OpenJDK Runtime Environment
java.runtime.version:11.0.15+10-Ubuntu-0ubuntu0.20.04.1
java.specification.name:Java Platform API Specification
java.specification.vendor:Oracle Corporation
java.specification.version:11
java.vendor:Private Build
java.vendor.url:Unknown
java.vendor.url.bug:Unknown
java.version:11.0.15
java.version.date:2022-04-19
java.vm.compressedOopsMode:Zero based
java.vm.info:mixed mode, sharing
java.vm.name:OpenJDK 64-Bit Server VM
java.vm.specification.name:Java Virtual Machine Specification
java.vm.specification.vendor:Oracle Corporation
java.vm.specification.version:11
java.vm.vendor:Private Build
java.vm.version:11.0.15+10-Ubuntu-0ubuntu0.20.04.1
jdk.debug:release
line.separator:
os.arch:amd64
os.name:Linux
os.version:5.13.0-40-generic
path.separator::
sun.arch.data.model:64
sun.boot.library.path:/usr/lib/jvm/java-11-openjdk-amd64/lib
sun.cpu.endian:little
sun.cpu.isalist:
sun.desktop:gnome
sun.io.unicode.encoding:UnicodeLittle
sun.java.command:com.favtuts.display.DisplayApp
sun.java.launcher:SUN_STANDARD
sun.jnu.encoding:UTF-8
sun.management.compiler:HotSpot 64-Bit Tiered Compilers
sun.os.patch.level:unknown
user.country:US
user.dir:/home/tvt/favtuts/java-core-tutorials-examples
user.home:/home/tvt
user.language:en
user.name:tvt
user.timezone: