【问题标题】:How to add new System Properties in java如何在java中添加新的系统属性
【发布时间】:2012-04-01 23:20:04
【问题描述】:

是否可以向 Java 系统属性添加新值。如果有任何方法可以在 Java System Properties 中引入具有相应值的新键。

【问题讨论】:

    标签: java properties system-properties


    【解决方案1】:

    在启动 JVM 时使用 System.setProperty-Dname=value 标志

    【讨论】:

    • 感谢您的回复。使用 System.setProperty(String key, String value) 的代码运行良好,但我无法使用 getProperty(String key) 获得输出。我生成一个空值。
    • 另外,当我尝试通过 getProperties() 检查系统属性中的所有值时,新输入的属性并没有在其中列出。
    • 你知道这些属性只存在于正在运行的进程,对吧?您不是在尝试在不同的进程中检查它们,或者在停止并重新启动后使用相同的程序吗?我唯一可以建议的另一件事是,要么您实际上从未到达设置属性的代码行,要么您在运行尝试取回值的代码之后到达那里。
    • 我不知道它只存在于正在运行的进程中。但我想我引入了一个新密钥并在同一个程序中检查了它。这里看看我正在使用的代码示例,
    • System.setProperty("getsuga.tenhou","C:\\tanay\\getsuga"); System.out.print(System.getProperty("getsuga.tenshou"));
    【解决方案2】:

    是的:

    public static void main(String args[]) {
        String key = "a new property";
        System.setProperty(key, "a property with a value");
        System.out.println(System.getProperty(key));
    }
    

    【讨论】:

    • 谢谢你的回复,我试过你的方法。但是当我尝试 getProperty() 时,我得到一个空值。我很确定我正确输入了属性键。请指教。
    【解决方案3】:
    System.setProperties(properties object);
    

    这将设置系统属性。

    如果要设置指定属性,则使用

    System.setProperty(key, value);//Both key and value should be string.
    

    注意:这将首先检查权限,然后设置它。如果权限被拒绝,则可能会发生 SecurityException。

    【讨论】:

    • 感谢您的回复。这很有帮助。
    猜你喜欢
    • 1970-01-01
    • 2011-01-23
    • 1970-01-01
    • 2011-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-25
    • 2011-08-06
    相关资源
    最近更新 更多