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

时间:2013-03-18 14:33:41

标签: java

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

例如我可以使用的系统选项:

System.setProperty("My Property", "My Value");

编辑:基于@eis回答,以下代码(作为示例)有效:

import com.sun.deploy.config.Config;

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

1 个答案:

答案 0 :(得分:3)

这些选项可以从java控制面板更改。

如果已锁定,则为用户cannot change it

  

任何系统部署属性,例如SomeKey = SomeValue,都可能被锁定   通过包含另一个键SomeKey.locked。关键SomeKey.locked可能   或者可能没有设置值;在任何一种情况下,SomeKey = SomeValue都会   被锁定,以便用户无法更改它。如果是系统部署   属性未锁定,然后允许用户更改它。

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

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

对于其他人:基于上面提到的那个类,deployment.properties在内部保存为系统属性,所以我没有看到System.setProperty()也不会改变它们的原因。但是,更改此类属性可能会或可能不会产生任何影响。