Gay*_*tti 8 java classpath bootclasspath java-9 java-module
我有一个读取系统属性的类加载器应用程序 sun.boot.class.path
但是我在 JDK 9 的发行说明中发现此属性已被删除。
System.getProperty("sun.boot.class.path"); // In JDK 9/10 this returns null
Run Code Online (Sandbox Code Playgroud)
但是我还是想在JDK 10中检索这个属性值,怎么做呢?
我期待如下值:
/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/resources.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/rt.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/sunrsasign.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/jsse.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/jce.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/charsets.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/jfr.jar:/usr/lib/jvm/java-8-openjdk-amd64/jre/classes
Run Code Online (Sandbox Code Playgroud)
供参考:
我不想使用该-Xbootclasspath
选项。只需要路径值。
kad*_*dar -5
删除引导。它应该像这样工作:
System.getProperty("java.class.path")
要了解更多:
System 类有两个用于读取系统属性的方法:getProperty 和 getProperties。
System 类有两个不同版本的 getProperty。两者都检索参数列表中指定的属性的值。两个 getProperty 方法中较简单的一个采用单个参数,即属性键。例如,要获取 path.separator 的值,请使用以下语句:
System.getProperty("路径.分隔符"); getProperty 方法返回包含属性值的字符串。如果该属性不存在,则此版本的 getProperty 返回 null。
getProperty 的另一个版本需要两个字符串参数:第一个参数是要查找的键,第二个参数是在找不到键或没有值时返回的默认值。例如,以下 getProperty 调用将查找名为 subliminal.message 的系统属性。这不是有效的系统属性,因此此方法不会返回 null,而是返回作为第二个参数提供的默认值:“Buy StayPuft Marshmallows!”
System.getProperty("subliminal.message", "购买 StayPuft 棉花糖!"); System 类提供的最后一个访问属性值的方法是 getProperties 方法,该方法返回一个 Properties 对象。该对象包含一套完整的系统属性定义。
归档时间: |
|
查看次数: |
4105 次 |
最近记录: |