如何從Java應(yīng)用程序內(nèi)部獲取VM參數(shù)?我需要檢查是否可以傳遞給JVM的某個選項是顯式設(shè)置還是具有默認值。更具體一點:我需要創(chuàng)建一個具有比默認堆棧大更高的本機堆棧大小的特定線程,但是如果用戶希望通過指定-Xss我想要創(chuàng)建具有默認堆棧大小的所有線程的選項來自己處理這些事情(將由用戶在-Xss選項中指定)。我已經(jīng)檢查了類java.lang.System和的類java.lang.Runtime,但這些沒有給我任何有關(guān)VM參數(shù)的有用信息。有沒有辦法獲得我需要的信息?
3 回答

慕碼人2483693
TA貢獻1860條經(jīng)驗 獲得超9個贊
使用此代碼,您可以獲取JVM參數(shù):
import java.lang.management.ManagementFactory;
import java.lang.management.RuntimeMXBean;
...
RuntimeMXBean runtimeMxBean = ManagementFactory.getRuntimeMXBean();
List<String> arguments = runtimeMxBean.getInputArguments();

jeck貓
TA貢獻1909條經(jīng)驗 獲得超7個贊
在啟動時通過這個 -Dname=value
然后在你的代碼中你應(yīng)該使用
value=System.getProperty("name");
獲得這個價值
添加回答
舉報
0/150
提交
取消