欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Idea為java程序添加啟動參數(shù)(含:VM?options、Program?arguments、Environment?variable)

 更新時間:2022年12月26日 11:08:20   作者:禿禿愛健身  
設(shè)置啟動參數(shù)的意義就是當(dāng)啟動程序時,程序會優(yōu)先讀取idea的配置參數(shù),這樣就可以不用修改配置文件,下面這篇文章主要給大家介紹了關(guān)于Idea為java程序添加啟動參數(shù)(含:VM?options、Program?arguments、Environment?variable)的相關(guān)資料,需要的朋友可以參考下

一、運行Java程序

我們運行Java程序的時候,一般可以通過下列方式:

運行某個Class類(class表示的是包含main函數(shù)的class名稱(含包名))

java [options] class [arguments]

運行某個jar包(jar和xxx.jar配對使用,-jar指示用jar方式啟動,而xxx.jar表示的時jar文件的名稱)

java [options] -jar xxx.jar [arguments]

其中[options]表示Java運行環(huán)境的可選配置信息,其會影響到j(luò)ava運行環(huán)境,是性能調(diào)優(yōu)的關(guān)鍵所在,并且可以傳多個選擇項。

[arguments]表示的是程序自身的參數(shù),會被傳到main函數(shù)的參數(shù)數(shù)組里面,為程序自己所使用。

1、Java啟動命令可選項(options)

Java啟動命令可選項(options)大致可分為標(biāo)準非標(biāo)準兩種,非標(biāo)準的可選項不保證在所有平臺上都實現(xiàn),并且在未來的某個版本中可能會被修改且不告知,相對而言比較不穩(wěn)定(Unstable)。
從具體使用上而言可以分為三種,分別為:標(biāo)準可選項(Standard options)、非標(biāo)準可選項(Nonstandard Options) 和 不穩(wěn)定(Unstable)的選項。

1)Standard Options

標(biāo)準可選項常用的為-Dkey=value,通過其可以設(shè)定系統(tǒng)屬性值,比如編碼-Dfile.encoding=UTF-8??梢酝ㄟ^System.getProperty("keyname")來獲取系統(tǒng)屬性的值。

詳細可以參考博文:Java程序啟動時-D指定參數(shù)詳解

2)Nonstandard Options

非標(biāo)準可選項都以 -X 開始,常見于JVM調(diào)優(yōu)配置,比如:

  • -Xms<size>
    設(shè)置Java堆的初始化大小。例如 -Xms1024m,Java堆的初始化大小就設(shè)置為1G。
  • -Xmx<size>
    設(shè)置Java堆的最大值。例如 -Xmx3072m,Java堆的最大值就設(shè)置為3G。
  • -Xss<size>
    設(shè)置Java線程棧的值。例如 -Xss128m,Java線程棧的值就設(shè)置為128兆。
  • ..........

3)Unstable Options

不穩(wěn)定的選項也是非標(biāo)準的,其相當(dāng)于非標(biāo)準可選項的一個子集,都以-XX開頭;同樣常見于JVM調(diào)優(yōu)配置,比如:

  • -XX:+UseG1GC使用G1垃圾回收器。

  • -XX:+PrintGCDetailsGC日志中輸入垃圾回收的詳細信息。

  • -XX:OnOutOfMemoryErrorOOM時輸出dump文件。

  • ..........

2、程序參數(shù)(arguments)

class或者jar文件之后的字符串(--k=v)會傳到 main 函數(shù)的 String[] 類型的 args 參數(shù),多個參數(shù)用空格隔開;

如果某一個參數(shù)包含多個單詞,那么需要用引號包起來;

比如:

java -jar test-0.0.1-SNAPSHOT.jar --server.port=8099

效果圖:

二、添加啟動參數(shù)的步驟

1、打開需要添加啟動參數(shù)的對話框

2、配置啟動參數(shù)

系統(tǒng)環(huán)境變量不能直接以空格分隔,要點擊最右側(cè)的圖標(biāo),進入設(shè)置:

其實就是,系統(tǒng)環(huán)境變量之間要以;分隔

三、啟動參數(shù)示例解析

在Run/Debug Configurations頁面主動有三個內(nèi)容需要被關(guān)注:VM options、Program arguments、Environment variable。

1> VM options

設(shè)置JVM參數(shù) 或 系統(tǒng)屬性,需要以 -D 或 -X 或 -XX 開頭,每個參數(shù)使用空格隔開;

2> Program arguments

設(shè)置運行參數(shù),以--k=v的方式設(shè)置一個參數(shù),每個參數(shù)需要以空格隔開;

3> Environment variable

設(shè)置環(huán)境變量,多個以;分隔;

0、樣例

結(jié)合上圖的應(yīng)用啟動參數(shù)設(shè)置,在main函數(shù)中輸入如下內(nèi)容:

@SpringBootApplication
public class StartApplication {
    public static void main(String[] args) {
        SpringApplication.run(StartApplication.class, args);

        // todo 下面的內(nèi)容放在SpringApplication.run()前后都可以
        //打印傳進來的 program arguments
        for (String arg : args) {
            System.out.println(arg);
        }
        System.out.println("---------------");
        
        final String myEnv = System.getProperty("myEnv");
        System.out.println("System.getenv(\"myEnv\") = " + myEnv);
        System.out.println("---------------");

        final String myEnv2 = System.getenv("myEnv");
        System.out.println("System.getenv(\"myEnv\") = " + myEnv2);
        System.out.println("---------------");

        final String myProp = System.getenv("myProp");
        System.out.println("System.getenv(\"myProp\") = " + myProp);
    }
}

運行結(jié)果如下:

1、VM options

針對VM options中通過-D設(shè)置的系統(tǒng)屬性值,可以在代碼中通過System.getProperty(String key)方法獲??;如上述代碼中的:

final String myEnv = System.getProperty("myEnv");

此外:System#getProperty() 方法返回所有系統(tǒng)屬性值;

2、Environment variable

針對Environment variable中設(shè)置的系統(tǒng)環(huán)境變量值,可以在代碼中通過System.getEnv(String key)方法獲??;如上述代碼中的:

final String myEnv2 = System.getenv("myEnv");

此外:System#getenv() 方法返回所有系統(tǒng)環(huán)境變量值;

總結(jié)

到此這篇關(guān)于Idea為java程序添加啟動參數(shù)(含:VM options、Program arguments、Environment variable)的文章就介紹到這了,更多相關(guān)Idea java程序添加啟動參數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring Data JPA進行數(shù)據(jù)分頁與排序的方法

    Spring Data JPA進行數(shù)據(jù)分頁與排序的方法

    這篇文章主要介紹了Spring Data JPA進行數(shù)據(jù)分頁與排序的方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-11-11
  • Java注解實現(xiàn)動態(tài)數(shù)據(jù)源切換的實例代碼

    Java注解實現(xiàn)動態(tài)數(shù)據(jù)源切換的實例代碼

    本篇文章主要介紹了Java注解實現(xiàn)動態(tài)數(shù)據(jù)源切換的實例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • Java基礎(chǔ)教程之八大基本數(shù)據(jù)類型

    Java基礎(chǔ)教程之八大基本數(shù)據(jù)類型

    這篇文章主要給大家介紹了關(guān)于Java基礎(chǔ)教程之八大基本數(shù)據(jù)類型的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • Maven Plugins報錯的解決方法

    Maven Plugins報錯的解決方法

    本文主要介紹了Maven Plugins報錯的解決方法,文中通過圖文介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-02-02
  • java圖片驗證碼實現(xiàn)示例分享

    java圖片驗證碼實現(xiàn)示例分享

    這篇文章主要介紹了java實現(xiàn)圖片驗證碼示例,需要的朋友可以參考下
    2014-02-02
  • 關(guān)于Java中properties文件編碼問題

    關(guān)于Java中properties文件編碼問題

    這篇文章主要介紹了關(guān)于Java中properties文件編碼問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • mybatis返回map類型數(shù)據(jù)空值字段不顯示的解決方案

    mybatis返回map類型數(shù)據(jù)空值字段不顯示的解決方案

    這篇文章主要介紹了mybatis返回map類型數(shù)據(jù)空值字段不顯示的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • 使用java?-jar修改SpringBoot中application.properties的配置項

    使用java?-jar修改SpringBoot中application.properties的配置項

    這篇文章主要介紹了使用java?-jar修改SpringBoot中application.properties的配置項問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • 基于SpringBoot啟動類靜態(tài)資源路徑問題

    基于SpringBoot啟動類靜態(tài)資源路徑問題

    這篇文章主要介紹了SpringBoot啟動類靜態(tài)資源路徑問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Spring中@Conditional注解用法詳解

    Spring中@Conditional注解用法詳解

    這篇文章主要介紹了Spring中@Conditional注解用法詳解,@Conditional是Spring4版本新提供的一種注解,它的作用是按照設(shè)定的條件進行判斷,把滿足判斷條件的bean注冊到Spring容器,需要的朋友可以參考下
    2023-11-11

最新評論