SpringBoot では、構成ファイルを jar パッケージの外に配置できるため、簡単に変更できます。再パッケージ化や展開は必要ありません。
構成ファイル ディレクトリを指定するいくつかの方法は次のとおりです: (有効な優先度によって高から低に並べ替えられています)
アプリケーションの起動時に、--spring.config.location
または -Dspring.config.location
コマンド ライン パラメーターを使用して、構成ファイルへのパスを指定できます。例: ( config の後の /
は省略できません )
java -jar test.jar --spring.config.location=/opt/app/config/
補足: FHS では /opt を「追加のアプリケーション パッケージのインストール用に予約されている」と定義しています。したがって、ここではアプリケーション構成ファイルを保存するために /opt
フォルダーが選択されています。
環境変数 SPRING_CONFIG_LOCATION
を設定して、構成ファイルへのパスを指定できます。例:
export SPRING_CONFIG_LOCATION=/opt/app/config/ java -jar test.jar
方法 1: アプリケーション (jar パッケージ) に config# という名前のファイルを作成します。
起動コマンドを実行します。 directory ## フォルダーに移動し、そのフォルダーに構成ファイルを配置します。
方法 2: アプリケーション (jar パッケージ) フォルダーと同じレベルのディレクトリに config
という名前のファイルを作成します。そしてそのフォルダーに構成ファイルを置きます。コードの構成ファイル application.properties
または application.yml
に次の行を追加します:
spring.config.name=application spring.config.location=classpath:/,file:./config/
properties または yml 構成ファイルを、同じレベルのアプリケーション (jar パッケージ)
ディレクトリに直接配置します。
フォルダーを作成し、properties または yml
を配置します。設定ファイル。 方法 5:
アプリケーション (jar パッケージ) 内の
classpath
yml 構成ファイルを直接配置します。 注: 上記の方法は組み合わせて使用できます。たとえば、コマンド ライン パラメータと環境変数の両方で構成ファイルへのパスを指定できます。コマンド ライン パラメータには、実行時の優先順位が最も高くなります。
2. SpringBoot 設定ファイルを有効にするための優先順位:
を渡します。 --spring.config.location
パラメータで指定されたメソッドが最も高い優先度を持ちます。SPRING_CONFIG_LOCATION 環境変数を設定して構成ファイルへのパスを指定することは 2 番目の優先事項です。
config フォルダーは 3 番目の優先順位です。
java -jar コマンドがプロジェクトの jar パッケージと同じディレクトリで実行されていない場合は、
config# をプロジェクトの jar パッケージと同じディレクトリで実行してください。プロジェクト jar パッケージ ## フォルダーが無効です。
または yml
ファイルは、spring.config.location
構成フォルダーを指定します。 4 つの優先事項。
プロジェクトの jar パッケージを同じレベルに直接配置します。 properties
ファイルは 5 番目に優先されます。設定ファイルを同じレベルのディレクトリに直接配置します。瓶のパッケージ。 プロジェクト内の
フォルダーは 6 番目の優先順位です。クラスパスの下に config フォルダーを作成し、設定ファイルが入っています。プロジェクト内の
は同じレベルに配置されます。properties
ファイルは優先度が最も低く、classpath の直下に配置されます。
設定ファイル。
SpringBoot はデフォルトで、最初に java -jar
コマンドと同じディレクトリにある config/application.properties
ファイルを読み取ります。 プロジェクト内の
ファイルの優先度は最も低くなります。
以上がSpringBoot はどのようにして構成ファイルを jar パッケージの外にハングするのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。