如何在运行时设置java.net.preferIPv4Stack=true?

2022-09-01 05:00:26

我需要禁用 IPv6。为此,java 文档指示设置 jvm 属性 。java.net.preferIPv4Stack=true

但是我不明白如何从代码本身做到这一点。

许多论坛演示了从命令提示符执行此操作,但我需要在运行时执行此操作。


答案 1

您可以使用System.setProperty("java.net.preferIPv4Stack" , "true");

这等效于在命令行中传递它-Djava.net.preferIPv4Stack=true


答案 2

另一种方法,如果你绝望了,并且无法访问(a)代码或(b)命令行,那么你可以使用环境变量:

http://docs.oracle.com/javase/7/docs/webnotes/tsg/TSG-Desktop/html/plugin.html

特别是对于java Web启动设置环境变量:

JAVAWS_VM_ARGS

对于小程序:

_JPI_VM_OPTIONS

例如:

_JPI_VM_OPTIONS=-Djava.net.preferIPv4Stack=true

此外,在Windows下,可以在“Java控制计划”页面的“Java”选项卡下设置全局选项(对于常规Java应用程序)。


推荐