Чтение свойства JVM по умолчанию с помощью программы
Я пытаюсь прочитать текущее расширение сущностиDjdk.xml.entityExpansionLimit
предел, но это дает ноль. Я пробовал следующий код
System.getProperty("Djdk.xml.entityExpansionLimit");
System.getProperty("jdk.xml.entityExpansionLimit");
System.getProperty("jdk.xml.entityExpansionLimit");
System.getProperty("-DentityExpansionLimit");
System.getProperty("-Djdk.xml.entityExpansionLimit");
System.getProperty("ENTITY_EXPANSION_LIMIT");
Все дают результат как null
2 ответа
Вы запускаете свою программу как
java Example -Djdk.xml.entityExpansionLimit=1234
и читать это свойство как
System.getProperty("jdk.xml.entityExpansionLimit");
Вы можете перечислить все свойства и проверить его название:
Properties props = System.getProperties();
Enumeration keys = props.keys();
while (keys.hasMoreElements()) {
String key = (String)keys.nextElement();
String value = (String)props.get(key);
System.out.println(key + ": " + value);
}
Если вы не можете видеть это, я думаю, что свойство не установлено ранее. Надеюсь это поможет.