什么是自定义JVM属性?

6

我是初学Java的,最近接触到了“自定义JVM属性”这个术语以及如何在Eclipse中使用自定义JVM属性运行配置。我想了解它究竟是什么以及它如何帮助我作为一名程序员。


你在哪里看到这个问题的?它有区分“属性”和“自定义属性”吗? - Raedwald
@Raedwald 实际上是有人问了我这个问题,我在网上搜索了一下,但没有找到什么好的答案。所以我来这里问了。 - d1729
3个回答

13

"JVM properties"的概念是一种使属性(名称/值对)在整个JVM范围内可用的方式。一旦你将属性传递给JVM,它就可以在JVM的每个地方访问。

如何将属性传递给JVM:

您可以在JVM启动时通过命令行传递属性(-Dproperty_name1=property_value1 -Dproperty_name2=property_value2 ...)或者通过从属性文件中调用System.getProperties().load(inputStream)来传递属性到正在运行的JVM中。

如何使用该属性:

无论哪种方式,这些属性都成为JVM范围内的属性,您可以通过调用System.getProperty("property_name1")等方法在应用程序的任何地方访问它们。

这份文档可能会帮助您了解属性概念和用法。

示例:

package so;
public class SomeClass {
    public void someMethod() {
        System.setProperty("my_pet_name", "boomerang");
    }
}

如果在您的应用程序中的任何时候调用了someMethod(),那么您可以像这样在任何其他类中读取它:

package so;
public class SomeOtherClass {
    public void someOtherMethod() {
        String myPetName = System.getProperty("my_pet_name");
        System.out.println(myPetName);
    }
}

1
现在我明白我实际在做什么了。感谢回复。 - d1729

1
如果你刚开始学习,这不是你需要担心的问题,也不会对你产生任何影响。JVM参数是你可以为程序调整JVM的方式。最常见的用途是调整Java使用的内存或调整垃圾回收算法。

0

您可以通过在 Run Configurations 中指定自定义 JVM 属性来运行应用程序。按照以下步骤进行配置:

  • 右键单击项目。点击 Run as,然后选择 Run Configurations
  • 转到 Arguments 选项卡,并将自定义参数放在 VM Arguments 框中
  • 运行项目时,您可以使用相同的默认配置。

我知道如何做那个。只是我不知道我实际上在做什么。无论如何,还是谢谢。 - d1729

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接