Каков полный список стандартных ключей, распознаваемых методом Java System.getProperty()?
Есть ли справочная страница, которая перечисляет все стандартные ключи свойств, которые всегда принимаются Java System.getProperty(key)
метод?
Я имею в виду не системные свойства, которые могут быть установлены пользователем команды java (это будет неограниченный список), а свойства, которые устанавливает среда выполнения (например, java.version
, java.specification.version
, так далее).
5 ответов
Может быть также полезно:
Покажите действительные значения свойств, которые получает ваша JVM:
java -XshowSettings:all
Как: https://docs.oracle.com/javase/tutorial/essential/environment/sysprop.html? Я бы сказал, что у Oracle будет список
Обновление (скопировано по ссылке выше):
"file.separator" Character that separates components of a file path. This is "/" on UNIX and "\" on Windows.
"java.class.path" Path used to find directories and JAR archives containing class files. Elements of the class path are separated by a platform-specific character specified in the path.separator property.
"java.home" Installation directory for Java Runtime Environment (JRE)
"java.vendor" JRE vendor name
"java.vendor.url" JRE vendor URL
"java.version" JRE version number
"line.separator" Sequence used by operating system to separate lines in text files
"os.arch" Operating system architecture
"os.name" Operating system name
"os.version" Operating system version
"path.separator" Path separator character used in java.class.path
"user.dir" User working directory
"user.home" User home directory
"user.name" User account name
Более полный список можно https://docs.oracle.com/javase/8/docs/api/java/lang/System.html.
java.version Java Runtime Environment version
java.vendor Java Runtime Environment vendor
java.vendor.url Java vendor URL
java.home Java installation directory
java.vm.specification.version Java Virtual Machine specification version
java.vm.specification.vendor Java Virtual Machine specification vendor
java.vm.specification.name Java Virtual Machine specification name
java.vm.version Java Virtual Machine implementation version
java.vm.vendor Java Virtual Machine implementation vendor
java.vm.name Java Virtual Machine implementation name
java.specification.version Java Runtime Environment specification version
java.specification.vendor Java Runtime Environment specification vendor
java.specification.name Java Runtime Environment specification name
java.class.version Java class format version number
java.class.path Java class path
java.library.path List of paths to search when loading libraries
java.io.tmpdir Default temp file path
java.compiler Name of JIT compiler to use
java.ext.dirs Path of extension directory or directories Deprecated. This property, and the mechanism which implements it, may be removed in a future release.
os.name Operating system name
os.arch Operating system architecture
os.version Operating system version
file.separator File separator ("/" on UNIX)
path.separator Path separator (":" on UNIX)
line.separator Line separator ("\n" on UNIX)
user.name User's account name
user.home User's home directory
user.dir User's current working directory
Хотя некоторые дубликаты, я думаю, что первые описания более информативны, чем последние. Последний перечисляет 28 свойств, тогда как, если я распечатаю все свойства, мой jvm отвечает 56, некоторые из которых не перечислены в 28, включают sun.*
(12), *.awt.*
(3), 7 из 10 пользовательских свойств (country.format, country, script, variant, timezone, language, language.format
)
Вы можете отобразить все свойства и их настройки на вашей консоли, используя следующий код
//Properties inherits form Hashtable and holds the
//Information of what the Propertie is called (key)
//and what the Propertie really is (value)
Properties props = System.getProperties();
//We want to loop through the entrys using the Keyset
Set<object> propKeySet = props.keySet();
for (Object singleKey : propKeySet) {
System.out.println(singleKey += props.getProperty((String) singleKey));
}
Вы можете найти пример здесь http://javacodingnerd.blogspot.de/2017/03/java-how-to-gather-system-properties.html
Для лучшего способа вывода результатов вы можете использовать следующий код. Обратите внимание, что этот код полностью функционален в среде и языке программирования Processing. (Да, это на основе Java)
String Junk = System.getProperties().toString();
Junk = Junk.replace("}", "").replace("{", "");
String Separated [] = split(Junk, ", ");
for(int S = 0; S < Separated.length; S ++) {
String splitFurther [] = split(Separated [S], "=");
println("Key: " + splitFurther [0] + "\n\tProperty: " + splitFurther [1]);
}
Надеюсь, поможет.;)
Вы можете использовать этот код для получения системных свойств:
import java.util.Properties;
import java.util.Enumeration;
Properties props = System.getProperties();
Enumeration propNames = props.propertyNames();
for (; propNames.hasMoreElements();) {
String key = propNames.nextElement().toString();
System.out.println(key + " : " + props.getProperty(key));
}
Вы также можете получить информацию об окружении из System.getEnv().