Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在java.security.security中查找所有属性的当前状态_Java - Fatal编程技术网

在java.security.security中查找所有属性的当前状态

在java.security.security中查找所有属性的当前状态,java,Java,对于调试,我需要一种方法来发现,对于在给定时刻运行的JVM,类中维护的所有属性的所有名称和所有值 通过研究API规范和 如果我知道某个属性的名称,我可以使用查找其当前值。但我不知道如何发现所有的名字 属性的初始设置可以在配置文件中进行,但稍后可以使用动态添加和更改设置。我对当前设置感兴趣,它不一定是初始设置 谢谢您的指导 setProperty和getProperty都操作内部props字段。您可以使用反射API访问它。严格使用此代码作为调试的一次性代码!永远不要进入生产代码 Field f =

对于调试,我需要一种方法来发现,对于在给定时刻运行的JVM,类中维护的所有属性的所有名称和所有值

通过研究API规范和

如果我知道某个属性的名称,我可以使用查找其当前值。但我不知道如何发现所有的名字

属性的初始设置可以在配置文件中进行,但稍后可以使用动态添加和更改设置。我对当前设置感兴趣,它不一定是初始设置


谢谢您的指导

setProperty
getProperty
都操作内部
props
字段。您可以使用反射API访问它。严格使用此代码作为调试的一次性代码!永远不要进入生产代码

Field f = Security.class.getDeclaredField("props");
f.setAccessible(true);
Properties allProps = (Properties) f.get(null); // Static field, so null object.
System.out.println(allProps); //Or iterate over elements()/propertyNames() and print them individually

使用
安全性
类:

String certDisabled = Security.getProperty("jdk.certpath.disabledAlgorithms");
String tlsDisabled= Security.getProperty("jdk.tls.disabledAlgorithms");