Java 以编程方式更改deployment.properties文件

Java 以编程方式更改deployment.properties文件,java,Java,是否有方法以编程方式(不直接写入文件)更改deployment.properties(用户的appdata文件夹中的)中的选项 例如,对于系统选项,我可以使用: System.setProperty("My Property", "My Value"); 编辑:基于@eis answer,以下代码(作为示例)有效: 这些选项将在java控制面板中更改 如果已锁定,则用户: 任何系统部署属性,例如SomeKey=SomeValue,都可能被锁定 通过包含另一把钥匙,SomeKey.locked。

是否有方法以编程方式(不直接写入文件)更改deployment.properties(用户的appdata文件夹中的)中的选项

例如,对于系统选项,我可以使用:

System.setProperty("My Property", "My Value");
编辑:基于@eis answer,以下代码(作为示例)有效:


这些选项将在java控制面板中更改

如果已锁定,则用户:

任何系统部署属性,例如SomeKey=SomeValue,都可能被锁定 通过包含另一把钥匙,SomeKey.locked。钥匙被锁了 或不可设置为某个值;在这两种情况下,SomeKey=SomeValue都将 将被锁定,以便用户无法更改它。如果需要系统部署 属性未锁定,则允许用户更改它

如果不是,用户可以通过控制面板进行更改

现在,对于编程访问,在sun实现类中,有一个提供对这些属性中至少一些属性的访问,例如setCacheDirectory()。对于那些暴露在外的人来说,这种改变机制可能有效

至于其他属性:基于上面提到的那个类,deployment.properties在内部保存为系统属性,所以我看不出system.setProperty()为什么不更改这些属性。但是,更改这样的属性可能会产生任何效果,也可能不会产生任何效果

import com.sun.deploy.config.Config;

public class Main {
    public static void main(String[] args) {
        Config.setMixcodeValue(Config.MIXCODE_ENABLE);
        Config.store();
    }
}