【问题标题】:How to set default parameters to jvm?jvm如何设置默认参数?
【发布时间】:2013-01-16 12:25:43
【问题描述】:

我想知道如何在 JVM 启动之前将参数传递给它。例如,

我想我需要修改 JVM 时区参数。

我在 Windows 7 上使用 Eclipse。

【问题讨论】:

    标签: java windows set parameter-passing jvm-arguments


    【解决方案1】:

    在 Eclipse 中转到

    Run As -> Run Configurations -> Arguments -> VM Arguments
    

    并设置所需的 JMV 参数,例如

    -Duser.timezone=PST
    

    您可以通过运行此测试获取 JVM 中可用的所有时区 ID

    for(String id : TimeZone.getAvailableIDs()) {
        System.out.println(id);
    }
    

    输出

    Etc/GMT+12
    Etc/GMT+11
    Pacific/Midway
    Pacific/Niue
    Pacific/Pago_Pago
    Pacific/Samoa
    ....
    

    【讨论】:

    • 感谢您的建议。另一个问题是,当我运行此代码时:System.out.println(TimeZone.getDefault()); 输出是 sun.util.calendar.ZoneInfo[id="America/Caracas",offset=-16200000,dstSavings=0,useDaylight=false,transitions=5,lastRule =null] 如何以另一种方式更改?
    • 使用 TimeZone 方法之一,例如 TimeZone.getDefault().getDisplayName()
    【解决方案2】:

    JVM参数在命令行中用-D指定

    java -Dfile.encoding=utf-8 -jar myApp.jar
    

    在你的情况下使用-Duser.timezone

    How to set a JVM TimeZone Properly

    【讨论】:

    • 这不是 OP 要求的。
    • @bmargulies,有什么区别?发表你的答案。
    • 重读他受折磨的语法我不再确定你的答案有问题。
    • @bmargulies,是的,他的问题不清楚。当前的两个答案与当前的问题表述相互补充。
    • 如果我没有 Eclipse 也没有命令行怎么办 - 是否有默认配置文件?可能是某种默认属性文件,但在哪里?
    猜你喜欢
    • 1970-01-01
    • 2016-03-17
    • 2012-02-07
    • 2016-05-16
    • 1970-01-01
    • 1970-01-01
    • 2018-07-21
    • 2023-03-30
    • 1970-01-01
    相关资源
    最近更新 更多